Visual C# - 错误 1 名称'a'当前上下文中不存在

发布于 2024-11-30 22:47:55 字数 275 浏览 2 评论 0原文

private void button6_Click(object sender, EventArgs e)
{  

     for (int i = 0; i < a.Length; i++)
     {
        MessageBox.Show(a[i]);
     }

 }

 public void button7_Click(object sender, EventArgs e)
 {
      string[] a = { textBox1.Text};
 }
private void button6_Click(object sender, EventArgs e)
{  

     for (int i = 0; i < a.Length; i++)
     {
        MessageBox.Show(a[i]);
     }

 }

 public void button7_Click(object sender, EventArgs e)
 {
      string[] a = { textBox1.Text};
 }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

指尖上得阳光 2024-12-07 22:47:55

a 是一个方法变量;它仅在每次调用 button7_Click 时存在。我怀疑您需要将其设为 *field:

     for (int i = 0; i < a.Length; i++)
    {
        MessageBox.Show(a[i]);
    }

}
private string[] a;
public void button7_Click(object sender, EventArgs e)
{
     a = new string[]{ textBox1.Text};
}

然后:选择一个比 a 更好的名称。

a is a method variable; it only exists per call to button7_Click. I suspect you need to make it a *field:

     for (int i = 0; i < a.Length; i++)
    {
        MessageBox.Show(a[i]);
    }

}
private string[] a;
public void button7_Click(object sender, EventArgs e)
{
     a = new string[]{ textBox1.Text};
}

and then: choose a better name than a.

咆哮 2024-12-07 22:47:55

因为 a 被定义为 button7_click 函数的局部变量,所以它在表单上是全局的;在表单的变量上定义它

Because a is defined as a local variable for the button7_click function make it global over the form; define it on the variables of the form

梦萦几度 2024-12-07 22:47:55

a 不在button6 单击的范围内。

您必须在该处理程序中将其声明为一个字段,或者将其传递到自定义事件参数中。

你也可以这样做

 private void button6_Click(object sender, EventArgs e) {
        string[] a = { textBox1.Text};
        for (int i = 0; i < a.Length; i++)
        {
            MessageBox.Show(a[i]);
        }

    }

a is not in scope inside the button6 click.

You must declare it as a field, within that handler or pass it in within a custom eventargs.

You could do this also

 private void button6_Click(object sender, EventArgs e) {
        string[] a = { textBox1.Text};
        for (int i = 0; i < a.Length; i++)
        {
            MessageBox.Show(a[i]);
        }

    }
隔岸观火 2024-12-07 22:47:55

您在 button6_Click 中调用“a.Length”,但该方法中未定义 a 。如果您在两种方法中都需要“a”,则需要将其设为类变量。但从表面上看,您也可以在方法button6_Click 中获取文本框的内容。

you're calling "a.Length" in button6_Click but a is not defined in that method. if you need "a" in both methods you need to make it a class variable. but by the looks of this you could just as well get the contents of the textbox in method button6_Click.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文