大家好我有一個按鈕,我知道它有一個「Click
」事件。 如何通過「點擊」和委託添加此事件?由於從字符串添加事件處理程序
1
A
回答
2
定義helper方法:
public static void AddEventHandler(object obj, string eventName, Delegate handler)
{
if(obj == null) throw new ArgumentNullException("obj");
if(eventName == null) throw new ArgumentNullException("eventName");
if(handler == null) throw new ArgumentNullException("handler");
var type = obj.GetType();
var evt = type.GetEvent(eventName);
if(evt == null) throw new ArgumentException(
string.Format("Event '{0}' is not defined by type '{1}'", eventName, type.Name));
evt.AddEventHandler(obj, handler);
}
,並使用它:
AddEventHandler(yourButton, "Click", yourHandlerDelegate);
0
在相關表單(Web窗體,運表)::在cs文件
// This will handle the event for the button named bntSubmit
protected void btnSubmit_Click(object sender, EventArgs e)
{
// Code to handle click event
}
一般來說,大多數人(但不是全部)使用的事件處理程序<controlid>_<event>
命名約定。像btnSumbit_Click爲OnClick事件爲一個id爲btnSubmit的按鈕。
對於ASP.NET,你需要設置(在設計窗體上雙擊也會產生存根)按鈕的OnClick在標記(.aspx文件)屬性:
<asp:Button ID="btnSubmit" OnClick="btnSubmit_Click" Text="Submit" runat="server" />
在Win Forms中,雙擊設計器上的按鈕是生成方法存根的最快方法。
我沒有在MVC或WPF中工作太多,但我想象過程是相似的,方法簽名是相同的。
相關問題
- 1. perl用於處理字符串的IO事件處理程序
- 2. 設置一個事件處理程序從字符串
- 3. 添加事件處理程序
- 4. 動態添加事件處理程序
- 5. WPF C#添加事件處理程序
- 6. 動態添加事件處理程序
- 7. 添加Google Analytics事件處理程序
- 8. 添加自己的事件處理程序在其他事件處理程序
- 9. 在main()中爲串行端口添加事件處理程序
- 10. 添加jQuery的事件處理程序與通配符的ID
- 11. 調光控制的字符串和添加處理程序
- 12. Java事件處理程序字符串錯誤
- 13. C#添加事件處理程序文字代碼塊
- 14. 添加事件處理程序爲自定義文本字段
- 15. 添加iPhone OS事件的jQuery樣式事件處理程序
- 16. VB.NET:添加取消事件處理程序從其他類
- 17. 處理來自COM的事件時「無法添加事件處理程序」
- 18. 添加在java字符串處理
- 19. HTML事件處理程序與React事件處理程序
- 20. 從批處理程序中的字符串查找文件名
- 21. 添加加載的事件處理程序
- 22. 附加事件處理程序動態添加元素
- 23. 將事件處理程序添加到項目編程
- 24. 以編程方式向RadGrid添加事件處理程序
- 25. 將字符串放入處理程序
- 26. Ext.NET單擊處理程序字符串
- 27. 作爲Haskell程序處理字符串
- 28. 將自定義事件處理程序添加到AppWidget組件
- 29. 動態添加控件和事件處理程序C#
- 30. 將事件處理程序添加到自定義控件
我不明白這一點......什麼? – BoltClock