同时向两个事件添加方法

时间:2012-03-20 23:09:04

标签: c# events event-handling click keypress

我创建了一个自定义按钮,每当我添加Click事件时,我都需要添加一个PreviewKeyDown事件。到目前为止我得到的是:

public new event EventHandler Click { 
    add { 
        base.Click += value; 
        foreach (Control i in Controls) { 
            i.Click += value; 
        } 
    } 
    remove { 
        base.Click -= value; 
        foreach (Control i in Controls) { 
            i.Click -= value; 
        } 
    } 
} 

这会将click事件添加到所有内容中,但我需要在winforms中同时向click事件和PreviewKeyDown事件添加一个方法。它是一个自定义按钮,所以它可以在有人点击进入

时执行一个方法

如果某些事情不清楚只是评论和不清楚

1 个答案:

答案 0 :(得分:0)

已完成的代码:

public new event EventHandler Click {
add {
base.Click += value;
base.PreviewKeyDown += new PreviewKeyDownEventHandler(value);
foreach (Control i in Controls) {
i.Click += value;
i.PreviewKeyDown += new PreviewKeyDownEventHandler(value);
}
}
remove {
//same code with -= instead of +=, but the previewkeydown event is excluded because i couldnt find a way to remove it.
}
}