我在项目中有一小段代码:
private void textBox1_TextChanged(object sender, EventArgs e)
{
button2_Click();
}
private void button2_Click(object sender, EventArgs e)
{
x = 0;
}
现在,我想调用button2_Click方法,但我不能,因为我必须传递参数。
问题是,我不知道在调用方法时要传递什么参数。
我应该通过什么?
答案 0 :(得分:1)
像这样使用
private void textBox1_TextChanged(object sender, EventArgs e)
{
button2_Click(this.button2,EventArgs.Empty);
}
private void button2_Click(object sender, EventArgs e)
{
x = 0;
}
将其视为普通参数。但不是这样的推荐。最好的做法是提取button2_Click的主体并调用Extract方法。按钮2_Click应该总是被用户界面触发。例如:
private void textBox1_TextChanged(object sender, EventArgs e)
{
method();
}
private void button2_Click(object sender, EventArgs e)
{
method();
}
public void method(){
//x=0 or other
....
}
答案 1 :(得分:-1)
没关系,我刚才用过:
button2_Click(sender, e)
并且有效。