从一个函数中一次执行Click事件以获取特定按钮?

时间:2014-01-08 03:22:15

标签: c# visual-studio-2012 windows-store-apps

我正在创建一个Windows应用商店应用程序,我必须对其进行编程,以便在用户单击按钮后执行单击其他按钮的操作。我已经实现了计算机点击的逻辑。但代码b1.Click += btnClick;无法帮助我在b1 button上执行点击事件。请告诉我们该怎么做。如果要使用任何额外的内容,请提及命名空间。

4 个答案:

答案 0 :(得分:2)

   private void button6_Click(object sender, EventArgs e)
    {
        //just make sure your button initialized on form!!
        this.button7.Click += new EventHandler(button7_Click);
        EvenArgs ee = new EventArgs();
        button7_Click(this.button7, ee); //this will fire button event!
    }

答案 1 :(得分:1)

b1.Click += btnClick;应该可以用于订阅按钮点击事件。当用户点击/点击按钮时,btnClick处理程序将被触发。

现在,如果我正确地阅读了您的问题,您是否要求执行按钮点击?如果是这样,您可以自己调用事件处理程序btnClickbtnClick(this, null);

答案 2 :(得分:0)

b1.Click += btnClick;
b2.Click += btn2Click;
b3.Click += btn3Click;

void btnClick(...)
{
  ...

  // perform a click on different button after the user has clicked a button.
  btn2Click(...);
  btn3Click(...);
}

答案 3 :(得分:0)

正如安德鲁所说,您应该能够将多个事件添加到事件处理程序中,如下所示:

b1.Click += btnClick1;
b1.Click += btnClick2;

对于那个^,您可能想要检查事件处理程序是否已附加到this question解释的事件。

同样如Andrew和Nagaraj所提到的,你可以从事件处理程序中调用函数,如:

btnClick2(this, null);

并且它将执行代码(尽管控制稍微少一点,因为如果没有额外的努力,你将无法从点击处理程序中删除它)。

选项三是创建一个具有两个按钮所需功能的功能,只需从两个处理程序调用该功能,而不是另一个按钮“点击”。它更模块化,更明显代码中发生的事情。