दोनों के बीच क्या अंतर है, पंजीकरण के दौरान रजिस्टर() का उपयोग कब किया जाना चाहिए। रजिस्टर()?निर्भरताप्रॉपर्टी। रजिस्ट्रार() या। रजिस्ट्रार एटैच()
उत्तर
मुझे लगता है कि आप निर्भरता प्रॉपर्टी का मतलब है। रजिस्ट्रार और निर्भरताप्रॉपर्टी। रजिस्ट्रार।
निर्भरताप्रॉपर्टी। रजिस्ट्रार सामान्य निर्भरता प्रॉपर्टी पंजीकृत करने के लिए उपयोग किया जाता है। आप उन्हें नियमित गुणों के रूप में देख सकते हैं, जो जोड़ा गया मोड़ है कि वे डब्ल्यूपीएफ के डेटा बाइंडिंग, एनीमेशन इत्यादि में भाग ले सकते हैं। वास्तव में, वे अनियमित निर्भरता ऑब्जेक्ट के शीर्ष पर सामान्य संपत्ति (प्राप्त करने और सेट एक्सेसर्स के साथ) के रूप में सामने आते हैं। SetValue/GetValue। आप उन्हें अपने प्रकार के हिस्से के रूप में घोषित करते हैं।
दूसरी ओर संलग्न संपत्तियां अलग-अलग हैं। वे एक विस्तारशील प्रणाली के रूप में हैं। यदि आपने कभी भी विंडोज फॉर्म में विस्तारकों का उपयोग किया है, तो वे समान हैं। आप उन्हें किसी अन्य प्रकार के उपयोग के लिए एक प्रकार के हिस्से के रूप में घोषित करते हैं।
वे लेआउट से संबंधित जानकारी के लिए बहुत उपयोग किए जाते हैं। उदाहरण के लिए, कैनवास को बाएं/शीर्ष निर्देशांक की आवश्यकता होती है, ग्रिड को एक पंक्ति और कॉलम की आवश्यकता होती है, डॉकपैनल को डॉक सूचना आदि की आवश्यकता होती है। यदि यह सब कुछ नियंत्रण पर किया जाना चाहिए, तो यह सब गड़बड़ होगी। इसलिए उन्हें संबंधित पैनल पर घोषित किया जाता है, लेकिन किसी भी नियंत्रण पर उपयोग किया जाता है।
यदि आप की आवश्यकता है तो आप निर्भरता ऑब्जेक्ट को किसी भी जानकारी को संलग्न करने के लिए एक ही चीज़ का उपयोग कर सकते हैं। यह केवल उस जानकारी का एक टुकड़ा घोषित करने में आसान हो सकता है जिसे आप xaml में सेट कर सकते हैं, उदाहरण के लिए बाद में मौजूदा वर्ग के लिए शैली में उपयोग किया जा सके।
तो उन दो तरह की निर्भरता प्रॉपर्टी एक बहुत ही अलग उद्देश्य प्रदान करती है। नियमित गुण (रजिस्टर() के माध्यम से पंजीकृत) आपके प्रकार के इंटरफ़ेस के हिस्से के रूप में सामान्य गुणों की तरह उपयोग किए जाते हैं। संलग्न गुण (RegisterAttached() के माध्यम से पंजीकृत) मौजूदा वर्गों पर एक विस्तारशीलता बिंदु के रूप में उपयोग किया जाता है।
आशा है कि यह थोड़ा सा स्पष्ट करे।
क्या आपका मतलब DependencyProperty.Register() और DependencyProperty.RegisterAttached() है, मौका से? एमएसडीएन एक निर्भरताप्रोपर्टी सूचीबद्ध नहीं करता है। एटैच() या निर्भरता प्रॉपर्टी। एटैच पंजीकृत()।
निर्भरताप्रॉपर्टी के बीच का अंतर। रजिस्ट्रार() और निर्भरता प्रॉपर्टी। रजिस्ट्रार एटैच() वह है। रजिस्ट्रार() का उपयोग निर्भरता ऑब्जेक्ट पर 'नियमित' निर्भरता संपत्ति को पंजीकृत करने के लिए किया जाता है, जबकि। रजिस्ट्रार एटैच() को 'संलग्न' सेट करने के लिए उपयोग किया जाता है निर्भरता संपत्ति।
दो प्रकार की निर्भरता गुणों के बीच अंतर उचित रूप से सरल है: नियमित निर्भरता गुण किसी विशेष निर्भरता पर सेट होते हैं जैसे कि आप किसी भी अन्य .NET संपत्ति की तरह। दूसरी ओर, संलग्न गुण एक विशेष निर्भरता ऑब्जेक्ट (उदाहरण के लिए ग्रिड) से जुड़े होते हैं, लेकिन पूरी तरह से अलग निर्भरता ऑब्जेक्ट पर सेट होते हैं, अक्सर निर्भरता का एक बच्चा जो संलग्न संपत्ति को परिभाषित करता है (उदाहरण के लिए ग्रिड.रो, एक संलग्न संपत्ति, सेट है माता-पिता ग्रिड के बच्चों पर)।
संलग्न गुणों are on MSDN पर अधिक जानकारी।
या तो रजिस्टर या रजिस्टर के साथ पंजीकृत एक संपत्ति SetValue और GetValue के साथ किसी भी निर्भरता ऑब्जेक्ट से जुड़ी हो सकती है। लेकिन अगर आप रजिस्टर के साथ पंजीकृत एक संपत्ति को मालिक टाइप के अलावा किसी अन्य प्रकार की ऑब्जेक्ट में संलग्न करते हैं, तो इसका मेटाडेटा उपयोग नहीं किया जाएगा (डिफ़ॉल्ट मान को छोड़कर)। इसका मतलब है कि इनहेरिट्स या एफफेसमेयर जैसे गुण इन गुणों के लिए काम नहीं करेंगे। यदि आप संलग्न गुणों पर मेटाडेटा में रूचि रखते हैं तो आपको RegisterAttached का उपयोग करना चाहिए।
जानकारी के लिए, एक ऐसी ही सवाल का मेरा उत्तर देखें: Difference between Attached and non-Attached Dependency Properties in Silverlight
- 1. रजिस्ट्रार
- 2. होस्टिंग कंपनी या रजिस्ट्रार
- 3. सेगमेंटेशन रजिस्ट्रार
- 4. पीटीएक्स "बिट बाल्टी" रजिस्ट्रार
- 5. रजिस्ट्रार बनाम स्टैक्स
- 6. एएसपी.नेट @ रजिस्ट्रार बनाम @ रेफरेंस
- 7. असेंबली रजिस्ट्रार एएसपी और ईबीपी
- 8. ईएसआई और ईडीआई रजिस्ट्रार का उद्देश्य?
- 9. पहचानना कि कोई पता ढेर या ढेर या रजिस्ट्रार से संबंधित है
- 10. ScriptManager के साथ समस्या। रजिस्ट्रार क्लाइंटस्क्रिप्टब्लॉक और jQuery एक्सप्लोरर 8
- 11. रजिस्ट्रार धागे के बीच कैसे साझा किए जाते हैं?
- 12. यूनिटी का उपयोग कैसे करें। Moq के साथ रजिस्ट्रार टाइप करें?
- 13. सीयूडीए में किस प्रकार के चर रजिस्ट्रार का उपभोग करते हैं?
- 14. फ़ंक्शन में उपयोग करने के लिए कौन से रजिस्ट्रार सुरक्षित हैं (x86)
- 15. पेज का उपयोग करना। क्लाइंटस्क्रिप्ट। रजिस्ट्रार क्लाइंटस्क्रिप्टबॉक काम नहीं कर रहा
- 16. मैं स्ट्रक्चर मैप रजिस्ट्रार कन्स्ट्रक्टर में एक उदाहरण कैसे प्राप्त कर सकता हूं?
- 17. रजिस्ट्रार मैपिंग जैकसन 2 एचटीपीएमसेज कनवर्टर वसंत 3.1.2 में जेएक्सबी एनोटेशन
- 18. कमांडमैनेजर के माध्यम से इनपुट बाध्यकारी को कैसे हटाएं। रजिस्ट्रार क्लास इनपुट बाइंडिंग?
- 19. पेज कैसे प्राप्त करें। क्लाइंटस्क्रिप्ट। रजिस्ट्रार क्लाइंटस्क्रिप्ट सिर में शामिल करने के लिए शामिल करें?
- 20. किसी प्रोग्राम से नियंत्रण रजिस्ट्रार cr0, cr2, cr3 तक कैसे पहुंचे? सेगमेंटेशन गलती प्राप्त करना
- 21. एएसपीनेट: क्लाइंटस्क्रिप्ट। रजिस्ट्रार क्लाइंटस्क्रिप्ट jQuery से लोड होने से पहले आग लगती है
- 22. एमवीसी 2 बनाम एमवीसी 3 कस्टम प्रमाणीकरण विशेषताएँ डेटा एन्नोटेशन मॉडेल वैलिडेटरप्रोवाइडर। रजिस्ट्रार एडाप्टर
- 23. रजिस्ट्रार रिकॉर्ड अपडेट करने से पहले मैं एक नए नेमसर्वर का परीक्षण कैसे कर सकता हूं?
- 24. WPF बाध्यकारी परिवर्तनीय/निर्भरताप्रॉपर्टी
- 25. मार्कअप एक्सटेंशन के भीतर निर्भरताप्रॉपर्टी
- 26. यह निर्धारित करने के लिए कि कौन से डोमेन रजिस्ट्रार (उदा।, गोडाडी, रजिस्टर.com) शीर्ष स्तर के डोमेन (टीएलडी) का समर्थन करते हैं?
- 27. लोग सामान्य श्रेणी में निर्भरताप्रॉपर्टी क्यों नहीं लपेटते हैं?
- 28. सिल्वरलाइट में नाम से निर्भरताप्रॉपर्टी कैसे प्राप्त करें?
- 29. ऐप इंजन डोमेन सीएनएन रिकॉर्ड - "ghs.google.com" या "ghs.google.com।"
- 30. समझना कि निर्भरताप्रॉपर्टी कैसे काम करती है और लागू की जाती है
तो देते हैं वर्गों है कि आप आपके पास नहीं हैं गुण जोड़ने के लिए इस्तेमाल किया जा सकता? क्या यह अंतर है? – Vaccano
आपको बहुत बहुत धन्यवाद! –
आप निर्भरता गुण सेट कर सकते हैं जो ** अन्य ** अन्य गुणों पर संलग्न गुण नहीं हैं: 'this.button.SetValue (TextBox.TextProperty," text "); '(जहां' this.button' प्रकार' सिस्टम है। Windows.Controls.Button')। यह बिल्कुल ठीक है इसलिए जवाब काफी पूरा नहीं है। इसके लिए और भी होना चाहिए। – bitbonk