, मैं एक स्थिर श्रेणी का निर्माण Event
:
public static class Event
{
public static bool Raise<T>(Object source, EventHandler<T> eventHandler, T eventArgs) where T : EventArgs
{
EventHandler<T> handler = eventHandler;
if (handler != null)
{
handler(source, eventArgs);
return true;
}
return false;
}
}
यह भी मान लिया अपने ईवेंट हैंडलर्स प्रकार EventHandler<T>
के हैं। वापसी का प्रकार void
से bool
से बदल दिया गया था और यह लौटाता है कि घटना के कोई श्रोताओं थे या नहीं। शायद ही कभी इस्तेमाल किया गया, तो void
पर वापस बदलने के लिए स्वतंत्र महसूस करें।
उदाहरण उपयोग:
public event EventHandler<FooArgs> FooHappend;
public void Foo()
{
Event.Raise(this, FooHappend, new FooArgs("Hello World!");
}
स्रोत
2017-05-05 09:20:39
इस विवर्तन के साथ, दौड़ की स्थिति से बचने के लिए शून्य की जांच करने से पहले स्थानीय चर में हैंडलर रखने की कोई ज़रूरत है? –
@ mohsen.d कोई दौड़ की स्थिति नहीं है। eventHandler एक पैरामीटर है। – CrazyCasta
@ रीड कॉपसे क्षमा करें, लेकिन क्या आप थोड़ा और समझा सकते हैं? धन्यवाद –