2010-06-03 19 views
5

के साथ एलिमेंट होस्ट लोडिंग समय समस्या मेरे पास 3 WPF नियंत्रणों वाला एक तत्व होस्ट है। मैं तत्व मेजबान को Winform पर रख रहा हूं। जब मेरा एप्लिकेशन आ रहा है, तो तत्व होस्ट में कुछ सेकंड लग रहे हैं और Winform को रिक्त स्क्रीन के रूप में प्रदर्शित किया जा रहा है।Winforms

इसे कैसे ठीक करें? किसी भी विचार की सराहना की जाती है। असल में, मैं रिक्त स्क्रीन प्रदर्शित नहीं करना चाहता क्योंकि यह एप्लिकेशन आने पर बदसूरत लग रहा है।

उत्तर

1

यह मुझे वास्तव में अजीब के रूप में हमला करता है। मैंने पहले एलिमेंटहोस्ट का उपयोग किया है और बाल नियंत्रण लोड करने में कोई गंभीर देरी नहीं देखी है।

यदि आप केवल एक सिंगल, सादे टेक्स्टबॉक्स नियंत्रण के साथ अपने नियंत्रण को बदलकर समस्या को अलग करने का प्रयास कर सकते हैं तो यह सहायक होगा। लोड करने में कितना समय लगता है?

मेरा संदेह यह है कि वास्तव में आपके नियंत्रण तर्क में कुछ ऐसा है जो नियंत्रण लोडिंग को पूरा करने और देरी करने में लंबा समय ले रहा है। यदि आप यह पता लगा सकते हैं कि यह क्या है और इसे गति दें या प्रसंस्करण एसिंक्रोनस (Reactive Extensions का उपयोग करने पर विचार करें) तो आप कम से कम ब्लैक स्क्रीन से छुटकारा पायेंगे। एक प्रोफाइलर (विजुअल स्टूडियो या ANTS) इसे कम करने में एक बड़ी मदद होगी।

1

आप लोड हो रहा है मॉडल खिड़की लोड & करके अपने लोडिंग समय में तेजी लाने के कर सकते हैं

, बस एक या दो तत्व मेजबानों के साथ नई विंडो बनाने बंद अपने आवेदन शुरू (यह केवल एक चाल है :)) और अपने बच्चे WPF जोड़ने नियंत्रित करता है। किसी भी तर्क को लागू करने या किसी भी गुण को सेट करने की आवश्यकता नहीं है, बस बाल नियंत्रण जोड़ें।

तब जब एप्लिकेशन शुरू होता है तो अपनी मॉडल विंडो लोड करें और बंद करें (स्क्रीन सीमा से लोड लोड स्थान सेट करें)। (यदि आप चाहते हैं कि आप अपनी मूल विंडो का भी उपयोग कर सकें।)

तो आपकी विंडो सामान्य रूप से खुल जाएगी।