2010-12-08 10 views
8

है मैं दो उपयोगकर्ता नियंत्रण के साथ सी # में एक विंडोज़ अनुप्रयोग बनाया है।एक विधि कॉल करने के लिए कैसे के बाद उपयोगकर्ता नियंत्रण दिखाई

जब प्रपत्र लोड पहले उपयोगकर्ता नियंत्रण लोड किया जाता है (और दिखाया गया है) और जब मैं अगला क्लिक करें मैं दूसरे उपयोगकर्ता नियंत्रण लोड।

अब मैं एक बार उपयोगकर्ता नियंत्रण दिखाई दे रहा है इस उपयोगकर्ता नियंत्रण से एक विधि के नाम से जाना चाहते हैं।

मैं ऐसा करने में सक्षम नहीं हूँ। यदि लोड ईवेंट से विधि को कॉल किया गया है तो नियंत्रण दिखाई देने से पहले इसे निकाल दिया जाता है।

कोई कैसे मैं विधि के फोन करना चाहिए के बाद नियंत्रण दिख रहा है पर मेरा मार्गदर्शन कृपया कर सकते हैं।

+2

मैं सिर्फ इस दूसरे दिन करने की कोशिश की। इसके लायक होने के लिए, मुझे जल्दी ही एहसास हुआ कि जो भी मुझे इस तरह की घटना की खोज करने के लिए मजबूर कर रहा था वह एक संकेतक था कि मेरा डिजाइन गलत था। आप यहाँ क्या करने की कोशिश कर रहे हैं? –

उत्तर

3

आप शायद VisibleChanged घटना का उपयोग करना चाहते।

उदाहरण के लिए:

userControl2.VisibleChanged += new EventHandler(this.UserControl2VisibleChanged); 

private void UserControl2VisibleChanged(object sender, EventArgs e) 
{ 
    if(userControl2.Visible) 
    { 
     CallMyMethodIWantToRunWhenUserControl2IsVisibleHere(); 
    } 
} 
+2

'VisibleChanged' क्या प्रश्नकर्ता की तलाश में है न कर पाएं। यह आवश्यक नहीं है जब 'UserControl' पहली बार लोड हो क्योंकि इसकी दृश्यता वास्तव में * बदलती नहीं है *। ('दृश्यमान' संपत्ति डिफ़ॉल्ट रूप से "सत्य" है।) –

+0

उपयोगकर्ता नियंत्रण नियंत्रण के बाद एक विधि को कॉल करने के उदाहरण के साथ अद्यतन उत्तर। – SwDevMan81

+0

आप हमेशा userControl2 का उपयोग कर सकते हैं। दृश्य = सत्य; init पर और अपनी विधि ट्रिगर .. :) – Pabuc

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