आप पहले से ही कुछ महान जवाब है कि अन्तर को स्पष्ट करती है लेकिन यह भी समझते हैं कि कस्टम नियंत्रण और UserControls
विभिन्न प्रयोजनों होता है। यदि आपके पास एक ऐसा एप्लिकेशन है जिसे कई स्थानों पर संपर्क विवरण संपादित करने की आवश्यकता है, उदाहरण के लिए, आप एक कस्टम नियंत्रण बना सकते हैं जिसमें सबमिट बटन के साथ रखे गए सभी डेटा के लिए लेबल और टेक्स्ट फ़ील्ड्स हैं, जिनमें प्रासंगिक कोड है और इस नियंत्रण का पुन: उपयोग करें अपने पूरे आवेदन में।
एक कस्टम नियंत्रण एक नियंत्रण है जो WPF
नियंत्रण कक्षाओं (ईजी Control
, ContentControl
इत्यादि) में से एक से लिया गया है और कोड में बनाया जाना है। इन नियंत्रणों में आमतौर पर एक समग्र संयोजन (लगता है TextBox
, ComboBox
, Label
) पूरी तरह से एक साथ काम करने की बजाय (हालांकि यह मामला नहीं होना चाहिए)।
UserControl
आमतौर पर WPF
से अपरिचित लोगों के लिए आसान होता है क्योंकि उन्हें दृष्टि से डिज़ाइन किया जा सकता है।
मेरा सुझाव UserControl
से शुरू करना होगा। WPF
कामों के तरीके से आप अधिक परिचित हो जाते हैं, तो आप इसे बाद में किसी कस्टम नियंत्रण में रीफैक्टर कर सकते हैं। कस्टम नियंत्रण के रूप में अपना नियंत्रण बनाना को ControlTemplate
एस और Style
के ज्ञान की आवश्यकता होगी क्योंकि आपको अपना नियंत्रण देखने और महसूस करने के लिए अपना खुद का प्रदान करने की आवश्यकता होगी।
जब सब कुछ कहा और किया जाता है, जब तक कि नियंत्रण सही तरीके से व्यवहार करता है, इससे कोई फर्क नहीं पड़ता कि आप किस दृष्टिकोण का उपयोग करते हैं।
एक ही समस्या के दो दृष्टिकोणों के उदाहरण के लिए this पोस्ट देखें। पोस्ट लेखक एक नियंत्रण चाहता था जो प्राथमिक सामग्री के सामने मोडल सामग्री पेश कर सकता है। पोस्ट लेखक ने वास्तव में UserControl
के रूप में इसे लागू करके अपने स्वयं के प्रश्न का उत्तर दिया। मैंने उस पोस्ट का उत्तर जोड़ा है जो नियंत्रण को कस्टम नियंत्रण के रूप में बनाता है लेकिन दोनों का एक ही अंत प्रभाव होता है।
स्रोत
2012-06-28 17:40:58
जहां तक मुझे पता है, कस्टम नियंत्रण केवल उपयोगकर्ता नियंत्रण (या मूल नियंत्रण) संकलित हैं –
@ डेविड ब्रुनेल निश्चित रूप से नहीं। टेम्पलेट के अलग-अलग हैंडलिंग को पहले से ही स्पष्ट करना चाहिए। इसके अलावा UserControl में कोई शैली नहीं हो सकती है, जो लगभग सभी कस्टम नियंत्रणों के लिए महत्वपूर्ण महत्व है। तेज प्रतिक्रिया के लिए – dowhilefor