,從我對如何創建鍵盤Click here for the link無法取得KeyPressEventHandler在用戶控件
的用戶控件看到了現場。我成功地將控件添加到工具中。並在Form UI中拖動一個。當我開始點擊數字。 RaiseButton被觸發:
private void btn1_click(object sender,eventargs e)
{
RaiseButton('1');
}
和另一個用戶控件。 有此方法
public event KeyPressHandler IsPressed;
public void RaiseButton(char Tosend)
{
KeyPressEventHandler handle = IsPressed;
handle(this,new KeypressEventArgs(Tosend));
}
的Class KeyPressHandler Ispressed值爲空 因此它不能寫入到文本框。現在我的問題是,我錯過了什麼使keypresseventhandler爲空?
請指教謝謝
嗨,感謝您的快速回復,但是您什麼意思沒有註冊?在這一行公共事件KeypressEventHandler IsPressed - 已經爲null的值。我如何註冊這個活動? – Androidz 2014-11-21 02:26:03
和對不起,我編輯這裏的句柄(this,txtbox.text)到 句柄(這個,新的KeyPresseventargs(tosend));這是在Windows控件庫中。 – Androidz 2014-11-21 02:27:46
看來你並不完全瞭解C#中的事件是如何工作的。我在這裏爲你創建了一個簡單的例子。 https://dotnetfiddle.net/3PfsRJ 它可能會幫助您瞭解您需要在代碼中執行的操作。另外,你可能想看到這個頁面。 http://msdn.microsoft.com/en-us/library/aa645739%28v=vs.71%29.aspx 我猜你的名字是你用Java編碼。 C#事件與Java如何做有點不同。 – wlemond 2014-11-22 15:58:50