कोशिश नहीं कर रहा है conf बंद होने की चिंताओं मुझे लगता है कि खिड़की के जीवन चक्र और प्रासंगिक घटनाओं को समझने के लिए यह सबसे अच्छा है।
हालांकि मेरी राय में पुष्टि का सर्वोत्तम स्रोत Closed
ईवेंट है। Closing और Closed: अन्य ढांचे तरीके शायद अविश्वसनीय
समापन घटनाक्रम
जब एक खिड़की बंद कर देता है, यह दो घटनाओं को जन्म देती है।
खिड़की बंद होने से पहले बंद किया जाता है, और यह तंत्र प्रदान करता है जिसके द्वारा विंडो बंद होने से रोका जा सकता है। विंडो बंद होने से रोकने के लिए का एक आम कारण यह है कि विंडो सामग्री में संशोधित डेटा शामिल है। इस स्थिति में, निर्धारित करने के लिए समापन ईवेंट को संभाला जा सकता है कि डेटा गंदा है और यदि ऐसा है, तो उपयोगकर्ता से पूछने के लिए कि क्या डेटा को सहेजने के बिना विंडो बंद करना जारी रखें या विंडो बंद करना रद्द करें। निम्नलिखित उदाहरण बंद करने वाले हैंडलिंग के प्रमुख पहलुओं को दिखाता है।
इसके अलावा अधिक
समापन ईवेंट हैंडलर एक CancelEventArgs, जो BooleanCancel संपत्ति है कि आप समापन से एक खिड़की को रोकने के लिए सही पर सेट को लागू करता है पारित कर दिया है। +
अगर बंद नहीं किया जाता है, या इसे संभाला जाता है लेकिन रद्द नहीं किया जाता है, तो विंडो बंद हो जाएगी। एक खिड़की वास्तव में बंद होने से ठीक पहले, बंद उठाया गया है। इस बिंदु पर, एक खिड़की बंद होने से रोका नहीं जा सकता है।
नोट
एक खिड़की स्पष्ट रूप गैर ग्राहक और ग्राहक क्षेत्रों में प्रदान की तंत्र के माध्यम से बंद कर दिया जा सकता है, एक खिड़की भी परोक्ष अन्य में व्यवहार का एक परिणाम के रूप में बंद कर दिया गया हो सकता है आवेदन या विंडोज के कुछ हिस्सों, जिनमें निम्न शामिल हैं:
एक उपयोगकर्ता बंद लॉग या बन्द हो जाता है कर विंडोज़ विंडोज़
एक खिड़की का मालिक बंद हो जाता है।
मुख्य एप्लिकेशन विंडो बंद है और ShutdownMode OnMainWindowClose है।
शटडाउन कहा जाता है।
सभी विंडो लाइफटाइम घटनाक्रम
निम्न उदाहरण एक खिड़की के जीवनकाल में प्रमुख घटनाओं के अनुक्रम को दर्शाता है।
निम्न उदाहरण एक खिड़की के जीवनकाल में प्रमुख घटनाओं (ShowActivated गलत पर सेट है खिड़की दिखाया गया है से पहले) सक्रियण के बिना दिखाया गया है का क्रम दर्शाती।
स्रोत
2018-01-16 00:57:26
इस घटना को भी obj.Close के बाद फायरिंग नहीं है()। जब यह पूरा आवेदन बंद हो जाता है तो यह केवल फायरिंग होता है। – HotTester
आप 'obj.Dispatcher.ShutdownStarted' सही कर रहे हैं? –
हां। मैंने डिस्पैचर बनाया है। शट डाउनस्टार्ट + = डिस्पैचर_शूटडाउनस्टार्ट; संवाद विंडो के निर्माता में और ऊपर दिए अनुसार कार्य में अपनी घटना लिखी। – HotTester