अभ्यास में कस्टम नियंत्रण कुछ ऐसे हैं जो आप कोड स्तर पर लागू करते हैं, जबकि आप उपयोगकर्ता नियंत्रण के लिए XAML का उपयोग कर सकते हैं। कस्टम नियंत्रण WPF नियंत्रण बेस कक्षाओं में से एक का विस्तार करते हैं और कोड के माध्यम से अतिरिक्त कार्यक्षमता प्रदान करते हैं इसलिए सभी जोड़े गए तर्क और प्रतिनिधित्व को कोड के अंदर लागू किया जाना चाहिए।
एक उपयोगकर्ता नियंत्रण तकनीकी रूप से एक सामान्य सामग्री नियंत्रण है जिसे आप कोड में कुछ हिस्सों में बढ़ा सकते हैं लेकिन आमतौर पर इसे अन्य नियंत्रणों के अंदर रखकर बढ़ाया जाता है। इसलिए जैसा कि केंट ने बताया कि UserControl अन्य नियंत्रणों का एकत्रीकरण है। यह सीमित करता है कि आप उपयोगकर्ता नियंत्रण के साथ क्या कर सकते हैं। इसका उपयोग करना आसान है लेकिन पूर्ण कस्टम नियंत्रण से अधिक सीमित है।
ये नियंत्रण रनटाइम दृष्टिकोण से एक छोटा अंतर है। एप्लिकेशन बनाते समय और उसमें एक UserControl रखने पर, नियंत्रण पेड़ के अंदर एक ठोस UserControl टेम्पलेट होगा। तो अगर हम एक विशेष बटन के एक लंगड़ा उदाहरण पर विचार करें। यदि आप एक उपयोगकर्ता नियंत्रण का उपयोग कर रहे थे तो आप <UserControl>
तत्व के अंदर एक बटन जोड़ देंगे । कस्टम नियंत्रण का उपयोग करते समय आप एक बटन से सबसे अधिक संभावना वाले नियंत्रण को प्राप्त करेंगे। तार्किक पेड़ में अंतर दिखाई देगा।
जबकि कस्टम नियंत्रण के समान एक तार्किक पेड़ प्रदान करेगा
UserControl एक तार्किक पेड़ देगा
तो अंत में UserControl सिर्फ एक सामान्य ContentControl है जिसे आप थोड़ा बढ़ा सकते हैं और जिसके लिए आप सामग्री को पूर्वनिर्धारित कर सकते हैं। कस्टम नियंत्रण कार्यान्वयन में आसानी की कीमत पर अधिक लचीलापन प्रदान करता है क्योंकि आपको XAML का लाभ होने के बजाय कोड में सभी तर्क और इंटरैक्शन करने होंगे।
हालांकि इस सब के बाद, मुझे नहीं लगता कि विज़ुअल स्टूडियो टेम्पलेट्स में इतना अंतर है। सबसे अधिक संभावना है कि विज़ुअल स्टूडियो कस्टम कंट्रोल सिर्फ एक खाली कस्टम नियंत्रण के साथ एक परियोजना बनाता है जबकि उपयोगकर्ता नियंत्रण परियोजना एक खाली उपयोगकर्ता नियंत्रण वाली परियोजना है। आप बाद में परियोजना में किसी भी प्रकार की वस्तुओं को जोड़ सकते हैं।
अपडेट करें
और कस्टम नियंत्रण और उपयोगकर्ता नियंत्रण का उपयोग करने के बारे में मेरी राय यह है कि यदि आप उपयोगकर्ता नियंत्रण के साथ कुछ कर सकते हैं और तार्किक पेड़ में अतिरिक्त नियंत्रण तत्व आपको परेशान नहीं करते हैं, तो उपयोगकर्ता नियंत्रण का उपयोग करें क्योंकि वे बहुत आसान हैं बनाएँ और बनाए रखें। कस्टम नियंत्रण का उपयोग केवल तभी करें जब आपके पास उपयोगकर्ता नियंत्रण का उपयोग न करने का कोई कारण हो।