界面上有button1和button2两个控件,在Button1_Click()事件中我需要自动点击一下Button2,于是我这样写:
private void Button1_Click(object sender, EventArgs e) 
{
......
button2_Click(sender, e);
......
}private void Button2_Click(object sender, EventArgs e) 
{
......
......
......
}然而程序却报错了,不知这样为什么不行?

解决方案 »

  1.   

    btn1.click=new eventhandler(btn1_click);
    btn2.click=new eventhandler(btn2_click);
    这个应该成吧;
    btn2_click(object sender,eventargs e)
    {
    btn1_click(sender,e);
    }
    这样估计也成吧.
      

  2.   

    button2_Click(null, null);
    试试
      

  3.   


    不应该是可以的。。Button2_Click(sender, e);大小写
      

  4.   

    Button2_Click(null,null);或是,你把触发控件要做的事情写成函数,然后直接调用函数就行了。感觉这样设计更好一点。
      

  5.   

    Button2_Click(null, null)  
      

  6.   


    protected void Button1_Click(object sender, EventArgs e)
    {
    Response.Write("Button1_Click");
    Button2_Click(sender, e);
    }protected void Button2_Click(object sender, EventArgs e)
    {
    Response.Write("Button2_Click");
    }上面是Web程序的两个按钮时间,测试的时候 单击按钮1 输出“Button1_ClickButton2_Click”
    单击按钮2 输出“Button2_Click”
      

  7.   


    private void button1_Click(object sender, EventArgs e)
    {
    MessageBox.Show("button1_Click");
    button2_Click(sender, e);
    }private void button2_Click(object sender, EventArgs e)
    {
    MessageBox.Show("button2_Click");
    }上面是C#Winform的两个按钮,也可以调用的
      

  8.   

    以前有遇过 button2.PerformClick() 不起作用的,后来没办法才写回 button2_Click(null, null)。
    不知你们见过没有。