2013-01-17 125 views
6

最近我閱讀MSDN「數據綁定概述」文章,有這樣的示例代碼:綁定路徑中的圓括號是什麼意思?

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

我知道{}表示標記擴展,但究竟意味着什麼()括號在這裏?這將是很好的人分享鏈接解釋這種語法。謝謝!

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

回答

3

(Validation.Errors)引用了Validation類附加屬性Errors。由於綁定具有RelativeSource = Self,因此它將查找與TextBox本身相關的附加屬性的值。

4

引述MSDN library(我引用MSDN這裏,是因爲我不能更好地寫下來):

這句法一般用於有下列情形之一:

  • 該路徑在XAML中指定的樣式或模板中沒有指定的TargetType。對於除此以外的情況,限定使用通常無效,因爲在非樣式的非模板情況下,該屬性存在於實例上,而不是類型。
  • 該屬性是一個附加屬性。
  • 您正在綁定到靜態屬性。

對於用作故事板目標,指定爲propertyName的屬性必須是DependencyProperty

相關問題