{
public partial class form1 : Form
{
public form1()
{
InitializeComponent();
}
public Button ButtonName { get { return } }
public static int initFaggleCount;
private void button1_Click(object sender, EventArgs e)
{
int faggleCount = initFaggleCount++;
string finalCalc = faggleCount.ToString();
label1.Text = finalCalc;
/*
Console.WriteLine(faggleCount);
Console.ReadLine();*/
}
private void button2_Click(object sender, EventArgs e)
{
/*TextWriter tw = new StreamWriter("SavedFaggleCount.txt");
tw.WriteLine();
tw.Close();*/
Console.WriteLine(faggleCount);
Console.ReadLine();
}
}
}
我希望可以从button2访问整数faggleCount,以便我可以从button2成功Console.WriteLine(fagleCount);
。我是菜鸟,任何帮助表示赞赏。谢谢!
答案 0 :(得分:1)
而不是在方法体内声明局部变量,您可以声明实例变量,以便类的所有成员都可以访问它。
public partial class form1 : Form
{
int faggleCount; //declare instance variable.
public form1()
{
InitializeComponent();
}
public Button ButtonName { get { return } }
public static int initFaggleCount;
private void button1_Click(object sender, EventArgs e)
{
faggleCount = initFaggleCount++; //use instance variable
string finalCalc = faggleCount.ToString();
label1.Text = finalCalc;
/*
Console.WriteLine(faggleCount);
Console.ReadLine();*/
}
private void button2_Click(object sender, EventArgs e)
{
/*TextWriter tw = new StreamWriter("SavedFaggleCount.txt");
tw.WriteLine();
tw.Close();*/
Console.WriteLine(faggleCount); //use instance variable
Console.ReadLine();
}
}
答案 1 :(得分:0)
在您的代码中, faggleCount是方法的本地,即只有方法中的代码才能访问它。您需要做的是将变量移动到类级别。像这样:
public class form1 : Form {
int faggleCount;
//your other code here
}
如您所见,变量现在在类中,而不是在方法中。这样,类中的所有方法都可以访问它,甚至内部类也可以访问它!
这个问题在初学者中很常见。理解变量的范围非常困难。简而言之,可以在类中访问类中的变量,可以在方法中访问方法中的变量。