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

本文关键字:上下文 不存在 错误 C#- Visual 1名 | 更新日期: 2023-09-27 18:06:19

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};
 }

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

a方法变量;它只存在于对CCD_ 2的每次调用中。我怀疑你需要把它变成一个*字段:

     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被定义为button7_click函数的局部变量,所以它在表单上是全局的;在形式的变量上定义它

a不在单击按钮6的范围内。

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

你也可以这样做

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

您在button__Click中调用"a.Length",但该方法中未定义a。如果在两个方法中都需要"a",则需要将其作为类变量。但从外观上看,您还可以在方法button_Click中获得文本框的内容。