डिस्पैचर अननहेल्ड अपवाद केवल यूआई थ्रेड द्वारा उठाया जाता है और केवल एक ईवेंट चलाने के दौरान अपवाद उठाया जाता है। इस तरह के अपवादों को विशेष रूप से संभालने के लिए एक परंपरा है, विंडोज़ फॉर्म में यह भी एप्लीकेशन के साथ है। थ्रेडएक्सप्शन (खराब नाम, थ्रेड के साथ कुछ भी नहीं)।
कारण यह है कि अपवाद को संभालने और प्रोग्राम को जिंदा रखने के लिए मामूली मौका है क्योंकि यूआई इवेंट हैंडलर हमेशा नाटकीय रूप से प्रोग्राम की स्थिति को हमेशा परिवर्तित नहीं करते हैं। यह इच्छापूर्ण सोच की बड़ी मदद लेता है। विंडोज फॉर्म इसे चरम पर ले जाता है, यह एक थ्रेडएक्सप्शनडियलॉग प्रदर्शित करता है जिसमें एक जारी बटन है, जिससे उपयोगकर्ता अपवाद को अनदेखा कर सकता है। डब्ल्यूपीएफ ऐसा नहीं करता है, आपको खुद को एक संवाद लिखना होगा। यही कारण है कि घटना है।
DispatcherUnhandledException की डिफ़ॉल्ट कार्रवाई अपवाद को पकड़ना नहीं है। तो आप इसे अनदेखा करने के लिए ठीक हैं, AppDomain.UnhandledException अगली आग लग जाएगी।
स्रोत
2010-07-09 12:21:54
वास्तव में जब आवेदन। डिस्पैचर अननहेल्ड अपवाद का उपयोग नहीं किया जाता है, तो वे अपवाद ऐपडोमेन में दिखाई देंगे। अनचाहे अपवाद, और एप्लिकेशन तुरंत बाहर निकल जाएगा। – stijn
अपवाद पकड़ा और संभाला जाता है तो आवेदन मौजूद नहीं होगा।उत्तर और टिप्पणी दोनों का अर्थ यह है कि आवेदन किसी भी तरह से बाहर निकल जाएगा जो गलत है। – vikp