में व्यूस्टेट और नियंत्रण मैंने कुछ दिन पहले व्यूस्टेट के बारे में एक प्रश्न पोस्ट किया था और कुछ परीक्षण चलाने के बाद मैं कुछ निष्कर्ष/परिणामों पर आया हूं। इन परिणामों के आधार पर मेरे पास कुछ प्रश्न हैं कि कोई कैसे कुछ चीजें करेगा।एएसपी.नेट
- usercontrolA एक पृष्ठ का
OnInit
से भरी हुई है, तो उसकी viewstateOnLoad
में उपलब्ध हो जाएगा:यहाँ है कि मैं भाग गया मेरी परीक्षण के परिणाम हैं। अन्य सभी नियंत्रण जो usercontrolA
OnInit
से लोड होता है, उनके व्यूस्टेट को उनकेOnLoad
में तैयार किया जाएगा। - यदि उपयोगकर्ताcontrolA को पृष्ठ के
OnLoad
से लोड किया गया है, तो उसका व्यूस्टेटOnPreRender
में उपलब्ध होगा। अन्य सभी नियंत्रण जो usercontrolAOnLoad
से लोड होता है, उनके व्यूस्टेट को उनकेOnPreRender
में उपलब्ध होगा। - यदि उपयोगकर्ताcontrolA किसी ईवेंट से लोड होता है (उदाहरण: बटन क्लिक करें।
OnLoad
के बाद ईवेंट आग औरOnPreRender
से पहले), तो उसका व्यूस्टेट उपलब्ध नहीं होगा। उपयोगकर्ता नियंत्रण लोड के सभी अन्य नियंत्रणों में उनके व्यूस्टेट उपलब्ध नहीं होंगे।
तो एक परिपूर्ण दुनिया में आप हमेशा स्थिति # 1 का उपयोग करके सभी नियंत्रण लोड करेंगे, ताकि उनका व्यूस्टेट उनके OnLoad
पर उपलब्ध हो। दुर्भाग्यवश जब आपको किसी बटन से नियंत्रण लोड करने की आवश्यकता होती है या OnLoad
से, OnPreRender
चरण से पहले अपने व्यूस्टेट को प्राप्त करने के लिए नियंत्रण का कोई तरीका नहीं है?
मैंने व्यूस्टेट पर आलेखों का एक समूह पढ़ा है और सोचा है कि मैंने इसे समझा है, लेकिन मेरे वर्तमान एप्लिकेशन पर काम कर रहा है जो उपयोगकर्ता नियंत्रकों को लोड करता है जो अन्य उपयोगकर्ता नियंत्रण लोड करता है, मुझे अपने पत्ते पर व्यूस्टेट प्राप्त करने में सक्षम होने के साथ एक वास्तविक कठिन समय है (श्रृंखला में अंतिम) usercontrol।
कोई भी सुझाव और/या लिंक की सराहना की जाती है।
हाय, यह मेरे मुद्दों में से एक था क्यों मैं व्यूस्टेट का उपयोग करने की कोशिश कर रहा था। मुझे किसी भी तरह से चिह्नित करने की ज़रूरत है कि पिछले पोस्टबैक पर ऑनक्लिक हैंडलर द्वारा लोड होने के बाद मेरे नियंत्रण को अगले पोस्टबैक पर लोड किया जाना चाहिए। मैं उस पृष्ठ से व्यूस्टेट का उपयोग करने के बारे में सोच रहा था जिसमें मूल्य होंगे। मेरे परीक्षणों में ऐसा लगता है कि यह जाने का रास्ता हो सकता है। – BlueChameleon