Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从其他函数访问变量?_C#_Winforms - Fatal编程技术网

C# 如何从其他函数访问变量?

C# 如何从其他函数访问变量?,c#,winforms,C#,Winforms,我试图从其他函数访问变量。但是,当我试图将函数中的变量公开或静态时,到处都会出现错误(尤其是公开的)。这是我的密码 public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void textBox1_TextChanged(object sender, EventArgs e) { string f = te

我试图从其他函数访问变量。但是,当我试图将函数中的变量公开或静态时,到处都会出现错误(尤其是公开的)。这是我的密码

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
        string f = textBox1.Text;
        label6.Text = f;
        label9.Text = f;
    }

    private void textBox2_TextChanged(object sender, EventArgs e)
    {
        string n = textBox2.Text;
        label14.Text = n;
    }

    private void textBox6_TextChanged(object sender, EventArgs e)
    {

    }

}

有人知道如何访问textBox6方法中的f或n吗?

您不能在方法/函数中声明
Public
/
Private
变量。相反,正确的位置是将公共变量放在类级别上。因此,您可以做的是:

public partial class Form1 : Form
{
 public string Mystring;
}
并在任意位置使用该变量

但是,如果您仍然对此不满意,并且希望将变量保留在方法/函数中,则可以执行以下操作之一:

如果方法/功能不是任何控件的事件

如果您有一个不是eventhandler(或事件侦听器)而是简单方法的方法,则可以轻松地在方法级别创建参数:

  public Mymethod(string MyString)
  {
  }
如果方法确实是一个事件

你看,总有办法的。即使您有一个事件监听器,也不难实现您想要的。创建一个方法,添加所需参数并从事件内部调用它:

 public void Myvars(string abc, int def)
 {
 ///do additional work if require
 }

 private void Btn1_Click()
 {
  Myvars("text", 1234);
 }

希望这对您有所帮助。

您希望在何处访问哪个函数的哪个变量?函数不能有带有访问修饰符(如public)的变量。我建议您在创建示例代码时遵循标准C#约定。特别是你的变量命名和大写。@mason,明白了