我有这个简单的代码...布尔值不改变
Public class Form1 : Form {
//bool value = false;
bool value;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e) {
if (value) {
MessageBox.Show("ValueChanged");
}
}
private void btn_Click (Object sender, EventArgs e) {
value = true;
MessageBox.Show("btnClicked");
}
}
MessageBox的表现时btn_Click被触发,而不是在Form1_Load事件?
Iv'e也尝试将if(value)语句放在Form1构造函数中(在InitializeComponent方法之后),但bool保持不变。有什么建议么?
编辑: 但是,如果它不'重置'数据呢?
您将'value'初始化为'false',因此消息框将不会显示,除非您在对象构造和表单加载之间更改了其他位置。 – crashmstr
研究一下编程,你会注意到每件事都有一个序列。就像生活一样,一旦它已经完成,你就不能改变它。 – Kroltan
当表单*加载*时发生'Load'事件。你在表单加载后点击按钮*,为什么你会期望'Load'事件再次触发? –