"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > C# में व्युत्पन्न कक्षाओं में विरासत में मिली घटनाओं को सही ढंग से कैसे ट्रिगर करें

C# में व्युत्पन्न कक्षाओं में विरासत में मिली घटनाओं को सही ढंग से कैसे ट्रिगर करें

2025-04-14 को पोस्ट किया गया
ब्राउज़ करें:618

] हालाँकि, इस तरह की विरासत में मिली घटनाओं को बढ़ाने के लिए संकलक त्रुटियों से बचने के लिए एक विशिष्ट दृष्टिकोण की आवश्यकता होती है। { पब्लिक इवेंट इवेंटहैंडलर लोडिंग; पब्लिक इवेंट इवेंटहैंडलर समाप्त; }

How Can I Properly Raise Inherited Events in C# Derived Classes?
एक व्युत्पन्न वर्ग में, लोडिंग इवेंट को बढ़ाने का प्रयास:

this.loading (यह, नया EventHandler ()); । इसके बजाय, आधार वर्ग में परिभाषित विशिष्ट तरीकों को लागू करके विरासत में मिली घटनाओं को उठाया जाना चाहिए। इसे प्राप्त करने के लिए, निम्नलिखित चरण आवश्यक हैं:

आधार वर्ग में संरक्षित ईवेंट-राइजिंग तरीके बनाएं:

आधार वर्ग में संरक्षित तरीकों को परिभाषित करें जो घटनाओं को बढ़ाने के लिए जिम्मेदार हैं। उदाहरण के लिए:
public class BaseClass
{
    public event EventHandler Loading;
    public event EventHandler Finished;
}

सार्वजनिक वर्ग baseclass { पब्लिक इवेंट इवेंटहैंडलर लोडिंग; पब्लिक इवेंट इवेंटहैंडलर समाप्त; संरक्षित आभासी शून्य onloading (EventArgs e) { EventHandler हैंडलर = लोडिंग; if (हैंडलर! = null) { हैंडलर (यह, ई); } } संरक्षित वर्चुअल शून्य onfinished (EventArgs e) { EventHandler हैंडलर = समाप्त; if (हैंडलर! = null) { हैंडलर (यह, ई); } } … उदाहरण के लिए:

public class BaseClass
{
    public event EventHandler Loading;
    public event EventHandler Finished;
}
सार्वजनिक वर्ग derivedClass: baseclass { सार्वजनिक शून्य dosomething () { // लोडिंग इवेंट बढ़ाएं Onloading (eventArgs.empty); // समाप्त घटना को बढ़ाएं Onfinished (eventargs.empty); } }

इस दृष्टिकोण का पालन करके, विरासत में मिली घटनाओं को सुरक्षित और कुशलता से व्युत्पन्न वर्गों में c#में उठाया जा सकता है।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3