绑定路径中的括号是啥意思?
Posted
技术标签:
【中文标题】绑定路径中的括号是啥意思?【英文标题】:What do parentheses in binding paths mean?绑定路径中的括号是什么意思? 【发布时间】:2013-01-01 04:46:11 【问题描述】:最近我在 MSDN 上阅读了“数据绑定概述”文章,并且有这样的示例代码:
<TextBox.ToolTip>
<Binding RelativeSource="RelativeSource Self" Path="(Validation.Errors)[0].ErrorContent"/>
</TextBox.ToolTip>
我知道 表示标记扩展,但这里的
()
括号是什么意思?有人分享解释这种语法的链接会很好。谢谢!
Path="(Validation.Errors)[0].ErrorContent"
【问题讨论】:
【参考方案1】:下面这个 msdn 链接巧妙地解释了验证规则和序列以及如何使用。
http://msdn.microsoft.com/en-us/library/system.windows.controls.validation.errors.aspx
【讨论】:
【参考方案2】:引用MSDN library(我在这里引用MSDN,因为我写得再好不过了):
此语法通常用于以下情况之一:
在 XAML 中指定的路径位于没有指定TargetType
的样式或模板中。限定用法通常不适用于除此之外的情况,因为在非样式、非模板情况下,属性存在于实例上,而不是类型上。 该属性是附属属性。 您正在绑定到静态属性。要用作情节提要目标,指定为
propertyName
的属性必须是DependencyProperty
。
【讨论】:
【参考方案3】:()
括号指的是附加属性。
Binding to an Attached Property
【讨论】:
实际上 可以 引用附加属性 - 但这不是您需要它们的唯一情况......【参考方案4】:(Validation.Errors)
引用 Validation
类中的附加属性 Errors
。由于绑定有一个RelativeSource = Self
,它会查找与 TextBox 本身相关的附加属性的值。
【讨论】:
以上是关于绑定路径中的括号是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章
java中@RequestMapping注解指定的路径value后面的大括号里面的字符串是啥意思啊!