uwp
बाइंडिंग बनाम x: बाइंड
खोज…
वाक्य - विन्यास
<ऑब्जेक्ट संपत्ति = "{x: बिंद}" ... />
<ऑब्जेक्ट प्रॉपर्टी = "{x: बिंद प्रॉपर्टीपाथ}" ... />
<ऑब्जेक्ट प्रॉपर्टी = "{x: बिंद पथ = प्रॉपर्टीपाथ}" ... />
<ऑब्जेक्ट प्रॉपर्टी = "{x: बाइंड [बाइंडप्रोपरेट्स]}" ... />
<ऑब्जेक्ट प्रॉपर्टी = "{x: बिंदी प्रॉपर्टीपैथ, [बाइंडप्रोपरेट्स]}" ... />
<ऑब्जेक्ट प्रॉपर्टी = "{x: बाइंड पाथ = प्रॉपर्टीपैथ, [बाइंडप्रोपरेट्स]}" ... />
टिप्पणियों
{x:Bind}
मार्कअप एक्सटेंशन- विंडोज 10 के लिए {Binding}
विकल्प है।
{x:Bind}
में {Binding}
की कुछ विशेषताओं का अभाव है, लेकिन यह {Binding}
तुलना में कम समय और कम मेमोरी में चलता है और बेहतर डिबगिंग का समर्थन करता है।
XAML लोड समय में, {x:Bind}
को आप एक बाध्यकारी वस्तु के रूप में क्या सोच सकते हैं, में परिवर्तित कर दिया जाता है, और इस ऑब्जेक्ट को डेटा स्रोत पर किसी प्रॉपर्टी से मान मिलता है। बाइंडिंग ऑब्जेक्ट वैकल्पिक रूप से डेटा स्रोत संपत्ति के मूल्य में परिवर्तन का निरीक्षण करने और उन परिवर्तनों के आधार पर खुद को ताज़ा करने के लिए कॉन्फ़िगर किया जा सकता है। यह अपने स्वयं के मूल्य में परिवर्तनों को स्रोत संपत्ति में वापस लाने के लिए वैकल्पिक रूप से कॉन्फ़िगर किया जा सकता है। {x:Bind}
और {Binding}
द्वारा बनाई गई बाध्यकारी वस्तुएं काफी हद तक कार्यात्मक रूप से समतुल्य हैं। लेकिन {x:Bind}
विशेष-उद्देश्य कोड निष्पादित करता है, जो यह संकलन-समय पर उत्पन्न करता है, और {Binding}
सामान्य-उद्देश्य रनटाइम ऑब्जेक्ट निरीक्षण का उपयोग करता है। नतीजतन, {x:Bind}
बाइंडिंग (अक्सर संकलित बाइंडिंग के रूप में संदर्भित) में बहुत अच्छा प्रदर्शन होता है, अपने बाध्यकारी भावों का संकलन-समय सत्यापन प्रदान करता है, और आंशिक रूप से उत्पन्न हुई कोड फ़ाइलों में ब्रेकपॉइंट्स सेट करने के लिए सक्षम करके डिबगिंग का समर्थन करता है। आपके पृष्ठ के लिए कक्षा। ये फ़ाइलें आपके obj फ़ोल्डर में पाई जा सकती हैं, जैसे (C # के लिए) .g.cs।
अधिक जानकारी के लिए कृपया x: Bind पर MSDN दस्तावेज़ देखें
कार्यों से {x: Bind} का मूल्यांकन
इस क्षमता को v1607 (रेडस्टोन 1) के बाद बिंद मार्कअप एक्सटेंशन में जोड़ा गया था।
आप एक फ़ंक्शन पथ, साथ ही साथ arg पथ और निरंतर आर्ग निर्दिष्ट कर सकते हैं। मान लें कि हमारे बैककोड में एक फ़ंक्शन परिभाषित है:
public string Translate(string text, string from, string to)
अब हम अपने इच्छित तत्व में फ़ंक्शन का मूल्यांकन करने के लिए बाइंड का उपयोग कर सकते हैं:
<TextBlock Name="SomeText" Text="How are you?" />
<TextBlock Name="{x:Bind Translate(SomeText.Text, 'en', 'es')}" />
फ़ंक्शन और आर्ग पथ में डॉट्स और कास्ट भी हो सकते हैं।