2013-01-17 13 views
6

हाल ही में मैं MSDN पर 'Databinding सिंहावलोकन' लेख पढ़ लिया है और इस तरह के नमूना कोड है:बाध्यकारी पथों में कोष्ठक क्या मतलब है?

<TextBox.ToolTip> 
    <Binding RelativeSource="{RelativeSource Self}" Path="(Validation.Errors)[0].ErrorContent"/> 
</TextBox.ToolTip> 

मुझे पता है कि {} मार्कअप एक्सटेंशन का मतलब है लेकिन क्या मतलब() यहाँ कोष्ठकों? स्पष्टीकरण इस तरह के वाक्यविन्यास के लिए लिंक साझा करना अच्छा होगा। धन्यवाद!

Path="(Validation.Errors)[0].ErrorContent" 

उत्तर

11

() ब्रांड्स संलग्न गुणों का संदर्भ लें।

Binding to an Attached Property

+2

वास्तव में एक संलग्न संपत्ति का उल्लेख _can_ - लेकिन यह है कि केवल उसी स्थिति में आप उन्हें आवश्यकता होगी नहीं है ... – Spontifixus

3

(Validation.Errors) का संदर्भ संलग्न संपत्ति ErrorsValidation कक्षा में। चूंकि बाइंडिंग में RelativeSource = Self है, इसलिए यह टेक्स्टबॉक्स के संबंध में उस संलग्न संपत्ति के मूल्य की तलाश करेगा।

4

MSDN library (मैं के हवाले कर रहा हूँ MSDN यहाँ क्योंकि मैं इसे बेहतर नीचे लिखा नहीं हो सकता था) का हवाला देते हुए:

इस वाक्य रचना आम तौर पर निम्नलिखित मामलों में से एक के लिए प्रयोग किया जाता है:

  • पथ XAML में निर्दिष्ट है जो शैली या टेम्पलेट में है जिसमें निर्दिष्ट TargetType नहीं है। एक योग्य उपयोग आम तौर पर इसके अलावा अन्य मामलों के लिए मान्य नहीं है, क्योंकि गैर-शैली, गैर-टेम्पलेट मामलों में, संपत्ति एक उदाहरण पर मौजूद है, एक प्रकार नहीं।
  • संपत्ति एक संलग्न संपत्ति है।
  • आप एक स्थिर संपत्ति के लिए बाध्यकारी हैं।

स्टोरीबोर्ड लक्ष्य के रूप में उपयोग के लिए, propertyName के रूप में निर्दिष्ट संपत्ति DependencyProperty होना चाहिए।

संबंधित मुद्दे