व्यक्तिगत अनुभव से मैंने विंडोज कॉम्बोबॉक्स को विरासत में एक उपयोगकर्ता नियंत्रण लिखा था। मैं OnEnter
घटना ओवरराइड करने के लिए कोड लिखने के लिए था और मैं वहाँ
If Me.Focused Then ... Else ...
कह हालांकि, दुर्भाग्य से यह अनपेक्षित परिणाम प्राप्त में एक बयान दिया था। अगर मैंने MyCustomerComboControl.Select
(या तो लोड, दिखाया या सक्रिय घटनाओं में) कहा जाता है तो इसे OnEnter
विधि कहा जाता है लेकिन पंजीकरण करने में विफल रहा, लेकिन इसमें फोकस था (यानी फोकस किया गया था) लेकिन अगर मैंने फोकस कहा तो यह काम करता था। इसके अलावा Select
काम करता था अगर फॉर्म खुला था यानी अगर मैंने एक और नियंत्रण चुना तो मूल नियंत्रण को फिर से चुना गया, सब ठीक था। तो मेरे परिदृश्य के अलावा किसी अन्य परिस्थिति में, Select
का उपयोग करें क्योंकि यह ऊपर बताता है।
मुझे नहीं लगता कि यह एक अच्छा पर्याप्त जवाब है। मैंने इसे पढ़ लिया और समझ लिया। मैंने एक कस्टम नियंत्रण लिखा था। मुझे नहीं पता कि मेरे कस्टम नियंत्रण में चयन बनाम फोकस का उपयोग करने के लिए मेरे लिए उचित कब है। क्या यह हमेशा एक चीज है? क्या मानदंड का कुछ सेट है? वास्तविक और अर्थपूर्ण दोनों, एक बनाम एक के प्रभाव क्या हैं? –
मुझे संदेह है कि अधिकांश लोग Google में इस प्रश्न को टाइप करने से पहले एमएसडीएन पढ़ेंगे। बस इसे दोहराना verbatum बहुत उपयोगी नहीं है। –