如何使用addHandler引发事件我对Vb.Net事件和处理程序非常满意。谁能帮我如何在C#中创建事件处理程序,并引发事件。只懂C#,或者只懂VB.Net的开发者可能不知道,这是VB.NET和C#最大的区别之一。我要厚颜无耻地复制这个对VB事件的精彩解释:VB使用声明性语法来附加事件。Handles子句出现在将处理事件的代码中。在适当的时候,多个方法可以处理同一个事件,多个事件可以由同一个方法处理。Handles子句的使用依赖于出现在基础变量声明(例如按钮)上的WithEvents修饰符。您还可以使用AddHandler关键字附加属性处理程序,并使用RemoveHandler删除它们。例如FriendWithEventsTextBox1AsSystem.Windows.Forms.TextBoxPrivateSubTextBox1_Leave(ByValsenderAsSystem.Object,_ByValeAsSystem.EventArgs)HandlesTextBox1.Leave'DoStuff'EndSub在C#中你不能使用语句sexual语法。您使用重载的+=就像VB.NetAddHandler一样。这是从tster的回答中无耻地偷来的一个例子:publicMyClass(){InitializeComponent();textBox1.Leave+=newEventHandler(testBox1_Leave);}voidtestBox1_Leave(objectsender,EventArgse){//DoStuff}inC在#2及之后的版本中,您可以添加这样的事件处理程序:yourObject.Event+=someMethodGroup;someMethodGroup的签名与yourObject.Event的委托签名匹配。在C#1中,您需要像这样显式创建事件处理程序:yourObject.Event+=newEventHandler(someMethodGroup);现在方法组、事件和EventHandler的签名必须匹配。publicMyClass(){InitializeComponent();textBox1.LostFocus+=newEventHandler(testBox1_LostFocus);}voidtestBox1_LostFocus(objectsender,EventArgse){//dostuff}试试这些。了解C#中的事件和事件处理器http://www.c-sharpcorner.com/UploadFile/ddutta/EventHandlingInNetUsingCS11092005052726AM/EventHandlingInNetUsingCS.aspxhttp://www.csharphelp.com/archives2/archive408.html以上是C#学习教程:如何使用addHandler触发事件。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击权利联系管理会员删除。如需转载请注明出处:
