我正試圖創建一個自定義控件,並需要從中引發一個事件。這個想法是在點擊事件(OnAfterClick)結束時引發一個事件。我找到了一兩個關於這樣做的教程,但我明顯錯過了某個步驟;我有以下幾點。C#中的自定義控件事件#
在控制:
public class AfterClickEventArgs : EventArgs
{
...
}
public partial class MyButton : CommandButton
{
public delegate void AfterClickEvnt(object sender, AfterClickEventArgs e);
public event AfterClickUpdatedEvnt AfterClick;
}
protected override void OnClick(EventArgs e)
{
...
Processing here
...
AfterClickEventArgs myArgs = new AfterClickEventArgs();
AfterClick(this, myArgs);
}
在程序使用控制:
在的InitializeComponent():
this.MyButton.AfterClick += new System.EventHandler(this.cmdMyButton_Click);
這條線是給我一個編譯錯誤(cmdMyButton_Click確實存在)。它告訴我: 不能隱式地將類型'System.EventHandler'轉換爲'Namespace.MyButton.AfterClick'
任何人都可以告訴我我錯過了什麼,或者誤解了這個嗎?
對不起 - 我已經清理的差異:-) – 2010-05-01 14:40:30