सबसे पहले, यह Windows फॉर्म का उपयोग कर डेस्कटॉप एप्लिकेशन के बारे में एक प्रश्न है, न कि एक ASP.NET सवाल।
मुझे अन्य रूपों पर नियंत्रण के साथ बातचीत करने की जरूरत है। मैं उपयोग करके नियंत्रणों तक पहुंचने की कोशिश कर रहा हूं, उदाहरण के लिए, निम्नलिखित ...
otherForm.Controls["nameOfControl"].Visible = false;
यह जिस तरह से मैं उम्मीद करता हूं काम नहीं करता है। मैं मुख्य
से फेंक दिया गया अपवाद समाप्त करता हूं। हालांकि, अगर मैं निजी
के बजाय नियंत्रण public
करता हूं, तो मैं उन्हें सीधे एक्सेस कर सकता हूं, इसलिए ...
otherForm.nameOfControl.Visible = false;
लेकिन क्या यह करने का सबसे अच्छा तरीका है? नियंत्रण "कोड> सार्वजनिक को दूसरे रूप में" सर्वोत्तम अभ्यास "माना जाता है? क्या किसी अन्य रूप पर नियंत्रण तक पहुंचने का एक "बेहतर" तरीका है?
आगे स्पष्टीकरण:
यह वास्तव में मेरे द्वारा पूछे गए किसी अन्य प्रश्न का अनुवर्ती प्रकार है, पेड़-दृश्य वरीयता संवाद बनाने के लिए सर्वोत्तम विधि? सी #? में इंटरफ़ेस का प्रकार। मुझे जो जवाब मिला वह बहुत अच्छा था और यूआई को सीधे और समय-समय पर डिजाइन और समय के साथ काम करने में आसान रखने के मामले में कई संगठनात्मक समस्याएं हल हुईं। हालांकि, यह इंटरफ़ेस के अन्य पहलुओं को आसानी से नियंत्रित करने के लिए एक निगलने वाला मुद्दा सामने आया।
असल में, मेरे पास एक मूल रूप है जो रूट फॉर्म पर पैनल में बैठे कई अन्य रूपों को तुरंत चालू करता है। इसलिए, उदाहरण के लिए, उन उप-रूपों में से एक पर एक रेडियो बटन को मुख्य, मूल रूप पर स्थिति पट्टी आइकन की स्थिति को बदलने की आवश्यकता हो सकती है। उस स्थिति में, मुझे पैरेंट (रूट) फॉर्म की स्थिति पट्टी में नियंत्रण से बात करने के लिए उप-फॉर्म की आवश्यकता है। (मुझे आशा है कि यह समझ में आता है, "पहले पर कौन है" जिस तरह से।)