यहां जादू है, DependencyProperty
की घोषणा static
है value
(यानी मेमोरी स्टोरेज)। static
कीवर्ड के साथ जो घोषणा आप जोड़ते हैं वह के लिए DependencyProperty
का पहचानकर्ता है क्योंकि उसी पहचानकर्ता को उस निर्भरता के सभी उदाहरणों द्वारा साझा किया जाएगा, जो संपत्ति की पहचान करने के लिए है, इसलिए इसे static
बनाने के लिए यह समझ में आता है।
दूसरी ओर, जब आप SetValue
DependancyObject
पर उदाहरण को फोन करके DependancyProperty
का मान सेट है, तो जिस पर setValue कहा जाता है DependancyObject
के प्रत्येक उदाहरण के संपत्ति के अपने स्थानीय मान संग्रहीत होगा। इसे DependancyObject
वर्ग द्वारा आंतरिक रूप से संभाला जाता है जो Dictionary
के प्रकार को बनाए रखता है जिसमें DependancyProperty
पहचानकर्ता और स्थानीय मान के बीच मानचित्रण होता है।
[गैर स्थैतिक निर्भरता गुणों] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/3660696/non-static- निर्भरता-properties) –
उपरोक्त प्रश्न के उत्तर में स्पष्टीकरण बल्कि मौलिक है, कृपया मूलभूत बातें पढ़ें, फिर हम बहस कर सकते हैं कि बाधाएं वैध हैं या नहीं। –
@ एम। बाबाकॉक: मैंने वर्णन में कहा है कि मैंने पहले ही कुछ स्पष्टीकरण देखे हैं लेकिन जो व्यापक नहीं हैं। मैंने पहले ही आपके प्रश्न को लिखने से पहले जो लिंक दिया है, मैंने देखा है, और साथ ही साथ मैंने यह भी देखा है http://stackoverflow.com/questions/2989431/why-are- निर्भरता-properties-static – Learner