用于收集命令按钮的通用方法

时间:2012-10-31 02:49:16

标签: c# windows-phone-7

我们如何为命令按钮的收集提供单一通用方法。我有数字(0,1,2 ..)命令按钮的集合,并且需要为所有这些按钮设置单一事件方法,因为它们具有相似的行为。

2 个答案:

答案 0 :(得分:2)

事件代表的模式使用两个参数。一个是发件人,另一个是eventargs。您可以根据发件人执行某些操作,也可以在标记中添加一些内容

void OnButtonClick(object sender, EventArgs e)
        {
            Button button = sender as Button;

            object data = button.Tag;
            DoSomething(data);
        }

答案 1 :(得分:1)

您可以通过Multicast Delegates

来实现这一目标
  1. 以这种方式定义GenericButtonClick事件处理程序:

    void OnGenenicButtonClick(object sender, EventArgs e)
    {
        var btn = sender as Button;
        // ... do something ...
    }
    
  2. 以这种方式分配GenericButtonClick事件委托(比如Load事件处理程序):

    cmdBtn1.Click += OnGenenicButtonClick;
    cmdBtn2.Click += OnGenenicButtonClick;
    //...
    
  3. 参考: