Поделиться через


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 , который сообщает сообщение об ошибке проверки. Значение метода задания привязывается к содержимому ошибки текущего 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 задает привязку к подсвойству Order объекта или свойства ShoppingCart.

  • Для привязки присоединенного свойства заключите его в скобки. Например, для привязки к присоединенному свойству 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=.}".

Сведения о синтаксисе пути см. в разделах Общие сведения о объявлениях привязки или Синтаксис XAML PropertyPath.

Сведения о привязках XML см. в свойстве XPath .

Чтобы выполнить привязку ко всему объекту Path , указывать свойство не нужно. Дополнительные сведения см. в разделе "Указание пути к значению" статьи Общие сведения о привязке данных.

Применяется к