2012-07-30 17 views
8

क्या यहां कोई अंतर है?क्या इवेंट हैंडलर को हटाने के इन 2 तरीकों के बीच कोई अंतर है?

Button1.Click -= new EventHandler(Button1_Click); 

और

Button1.Click -= Button1_Click; 

दूसरी विधि मेरे लिए काम नहीं लगता है, लेकिन मैंने देखा है यह जब गूगल-इंग 'कैसे एक ईवेंट हैंडलर दूर करने के लिए' का इस्तेमाल किया। संपादित करें: वास्तव में न तो मेरे लिए काम कर रहे हैं, यहां तक ​​कि या तो एक दूसरे के साथ काम करना चाहिए?

अद्यतन:

कारण इन मेरे लिए काम करने के लिए प्रकट नहीं किया था, क्योंकि मैं था AutoPostBack = मेरे नियंत्रण पर सच। मैं यह देखने के लिए ब्रेकपॉइंट्स सेट नहीं कर रहा था कि घटनाओं को बुलाया गया था या नहीं, मैंने ब्राउजर को यह देखने के लिए देखा कि क्या यह रीफ्रेश किया गया है (जिसका अर्थ है पोस्ट-बैक)।

+0

@MarkByers वास्तव में, मैंने यह दिखाने के लिए अपना प्रश्न अपडेट कर दिया है। आप का बहुत अजीब! – Dean

+0

'बटन 1_Click' हस्ताक्षर की तरह लगता है गलत हो सकता है। क्या कोड उन्हें जोड़ने के लिए काम करता था? – Enigmativity

+0

@ एनिग्मैटीविटी मैंने अपने एएसपीएक्स पेज के सामने के अंत में मार्कअप में इवेंट हैंडलर जोड़े, इसलिए वहां कोई समस्या नहीं थी। मैंने यह गलती समझाने के लिए अपना प्रश्न अपडेट कर दिया है कि मैंने यह माना कि यह कोड काम नहीं कर रहा था जब यह कुछ और था। – Dean

उत्तर

8

कोड के उन दो टुकड़े समान हैं। दूसरा वाक्यविन्यास (जिसे "विधि समूह रूपांतरण" कहा जाता है) सी # 2.0 में एक नई सुविधा थी।

+4

मुझे लगता है कि पहला एक मिसाइलिंग है। ऐसा नहीं लगता कि मैं मौजूदा को हटा देता हूं। संभव है कि बहुत से शुरुआती लोग परेशान हो जाते हैं। – dowhilefor

+0

@dowhilefor मैं वास्तव में खुद को एक नौसिखिया नहीं मानता लेकिन फिर भी वास्तव में पहले वाक्यविन्यास को नापसंद करता हूं। किसी ऑब्जेक्ट को किसी सूची से संदर्भ में निकालना क्योंकि मैं एक अलग ऑब्जेक्ट को निकालने का प्रयास करता हूं जो एक ही मान के समान होता है, फिर भी हैक जैसा लगता है। – Yaur

+0

@Yaur क्षमा करें, मैं यह नहीं कह रहा था कि आप एक नौसिखिया थे, यह सिर्फ एक अनुमान था कि यह भाषा सीखने वाले अन्य लोगों के लिए परेशान हो सकता है। लेकिन मैं सहमत हूं, मुझे किसी के लिए यह स्पष्ट नहीं लगता है। ईमानदार होने के लिए, मुझे यह देखना था कि कुछ महीने पहले वास्तव में क्या होता है, क्योंकि मुझे अब भी यकीन नहीं था। – dowhilefor

0

कार्यात्मक रूप से, नहीं। दोनों के बीच कोई अंतर नहीं है। न तो काम करने के बारे में आपके मुद्दे के रूप में, यदि यह एक एएसपी.NET ऐप है, तो आप एएसपीएक्स पेज में ऑटो इवेंट वायरअप को अक्षम करना चाह सकते हैं।

संबंधित मुद्दे