Binding.Path 属性

定义

获取或设置绑定源属性的路径。

public:
 property System::Windows::PropertyPath ^ Path { System::Windows::PropertyPath ^ get(); void set(System::Windows::PropertyPath ^ value); };
public System.Windows.PropertyPath Path { get; set; }
member this.Path : System.Windows.PropertyPath with get, set
Public Property Path As PropertyPath

属性值

绑定源的路径。 默认值为 null

示例

以下示例演示了一个样式触发器,该触发器创建 ToolTip 报告验证错误消息的 。 setter 的值使用 样式) TextBox 属性绑定到当前TextBox (RelativeSource 的错误内容。 有关此示例的详细信息,请参阅 如何:实现绑定验证

<Style x:Key="textBoxInError" TargetType="{x:Type TextBox}">
  <Style.Triggers>
    <Trigger Property="Validation.HasError" Value="true">
      <Setter Property="ToolTip"
        Value="{Binding RelativeSource={x:Static RelativeSource.Self},
                        Path=(Validation.Errors)/ErrorContent}"/>
    </Trigger>
  </Style.Triggers>
</Style>

注解

每个绑定通常都有以下四个组件:绑定目标对象、目标属性、绑定源和绑定源中要使用的值的路径。 有关这些数据绑定概念的详细信息,请参阅 数据绑定概述

使用 Path 属性指定要绑定到的源值:

  • 在最简单的情况下,Path 属性值是要用于绑定的源对象的属性名称,如 Path=PropertyName

  • 属性的子属性可以通过类似于 C# 中使用的语法来指定。 例如,子句 Path=ShoppingCart.Order 设置与对象或属性 ShoppingCart 的子属性 Order 的绑定。

  • 若要绑定到附加属性,请将附加属性置于括号中。 例如,若要绑定到附加属性 DockPanel.Dock,则语法为 Path=(DockPanel.Dock)

  • 可以在已应用索引器的属性名后面的方括号内指定属性的索引器。 例如,子句 Path=ShoppingCart[0] 将绑定设置为与属性的内部索引处理文本字符串“0”的方式对应的索引。 还支持多个索引器。

  • 可以在 Path 子句中混用索引器和子属性,例如 Path=ShoppingCart.ShippingInfo[MailingAddress,Street].

  • 可以在索引器内使用多个由逗号 (,) 分隔的索引器参数。 可以使用括号指定每个参数的类型。 例如,可以使用 Path="[(sys:Int32)42,(sys:Int32)24]",其中 sys 将映射到 System 命名空间。

  • 如果源是集合视图,则可以使用斜杠 (/) 指定当前项。 例如,子句 Path=/ 设置与视图中当前项的绑定。 如果源是集合,则此语法指定默认集合视图的当前项。

  • 可以组合使用属性名和斜杠,以遍历作为集合的属性。 例如,Path=/Offices/ManagerName 指定源集合的当前项,源集合中包含的 Offices 属性也是一个集合。 它的当前项是一个包含 ManagerName 属性的对象。

  • 句点 (.) 路径也可以用于绑定到当前源。 例如,Text="{Binding}" 等效于 Text="{Binding Path=.}"

有关路径语法的信息,请参阅 绑定声明概述PropertyPath XAML 语法

有关 XML 绑定,请参阅 XPath 属性。

若要绑定到整个对象,无需指定 Path 属性。 有关详细信息,请参阅 数据绑定概述中的“指定值的路径”。

适用于