在winform中如何实现点一个按钮执行这铵钮的事件的同时又执行另一个按钮的事件???

解决方案 »

  1.   

    在点击事件中使用
    Button1.PerformClick()
      

  2.   


      private void button1_Click(object sender, EventArgs e)
            {
                MessageBox.Show("button1");
                button2_Click(this, e);
            }
            private void button2_Click(object sender, EventArgs e)
            {
                MessageBox.Show("button2");
            }
      

  3.   

    方法1:
    建立一个或两个函数里面写入要执行的内容
            public void abc1()
            {
                //要执行的内容
            }
            public void abc2()
            {
                //要执行的内容
            }
    按钮点击时候执行这两个方法~~方法二:
    this.button1_Click();
      

  4.   

      private void button1_Click(object sender, EventArgs e)
            {
                MessageBox.Show("button1");
                button2_Click(null, null);
            }
            private void button2_Click(object sender, EventArgs e)
            {
                MessageBox.Show("button2");
            }
      

  5.   

    public Form1()
            {
                InitializeComponent();
                button2.Click += new EventHandler(Button2_Click);
                button3.Click += new EventHandler(Button3_Click1);
                button3.Click += new EventHandler(Button3_Click2);
            }
            private void Button2_Click(object sender, EventArgs e)
            {
                MessageBox.Show("Hi, I am botton2, and i will call the click event of button3 next.");
                button3.PerformClick();
            }
            private void Button3_Click1(object sender, EventArgs e)
            {
                MessageBox.Show("Hi, I am botton3 _1");
            }
            private void Button3_Click2(object sender, EventArgs e)
            {
                MessageBox.Show("Hi, I am botton3 _2");
            }
      

  6.   

    触发按钮的Click事件,使用PerformClick方法来触发,要比直接调用事件方法要好一些。如果出现5楼发的那种情况,试想如果Button3有不止一个事件方法,它可能有20个,那么我们就要在button2的事件响应方法中写20个方法,这样显然不太好。如果后来增加了一个Button的事件方法,还要想着在button2那里多写一次调用。如果使用PerformClick,我们只需要调用一次,其他的都交给代理去做了,省心还不出错。
      

  7.   

    通过委托代理执行触发按钮事件

     button1.PerformClick()