大家好我有一个按钮,我知道它有一个“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