比如:
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.CheckState == CheckState.Checked)
GlobalUser.myCurve1.IsVisible = true;
else
GlobalUser.myCurve1.IsVisible = false;
}private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
if (checkBox2.CheckState == CheckState.Checked)
GlobalUser.myCurve2.IsVisible = true;
else
GlobalUser.myCurve2.IsVisible = false;
}
有70多个同样的事件,该怎样写才简单些呢?
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.CheckState == CheckState.Checked)
GlobalUser.myCurve1.IsVisible = true;
else
GlobalUser.myCurve1.IsVisible = false;
}private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
if (checkBox2.CheckState == CheckState.Checked)
GlobalUser.myCurve2.IsVisible = true;
else
GlobalUser.myCurve2.IsVisible = false;
}
有70多个同样的事件,该怎样写才简单些呢?
private void chk_CheckedChanged(object sender, EventArgs e)
{
CheckBox chk=sender as CheckBox;
}
{
if (((CheckBox)sender).CheckState == CheckState.Checked)
GlobalUser.myCurve1.IsVisible = true;
else
GlobalUser.myCurve1.IsVisible = false;
}checkBox1.CheckedChanged+=new EventHandler(checkBox_CheckedChanged);
checkBox2.CheckedChanged+=new EventHandler(checkBox_CheckedChanged);
......
checkBoxn.CheckedChanged+=new EventHandler(checkBox_CheckedChanged);好好看看MSDN,把事件的本质搞清楚...
foreach (Control con in this.Controls)
{
if (con is CheckBox)
{
((CheckBox)con).CheckedChanged += new EventHandler(checkBox_CheckedChanged);
}
}
void checkBox_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.CheckState == CheckState.Checked)
GlobalUser.myCurve1.IsVisible = true;
else
GlobalUser.myCurve1.IsVisible = false;
}
问下兄弟...这个是不是不同的checkbox用委托调用了同一个checkbox的判断啊?