Binding.Path Proprietà

Definizione

Ottiene o imposta il percorso della proprietà di origine di associazione.

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

Valore della proprietà

Percorso dell'origine di associazione. Il valore predefinito è null.

Esempio

Nell'esempio seguente viene illustrato un trigger di stile che crea un ToolTip oggetto che segnala un messaggio di errore di convalida. Il valore del setter viene associato al contenuto di errore dell'oggetto TextBox corrente TextBox (utilizzando lo stile) utilizzando la RelativeSource proprietà . Per altre informazioni su questo esempio, vedere Procedura: Implementare la convalida dell'associazione.

<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>

Commenti

Ogni associazione include in genere questi quattro componenti: un oggetto di destinazione dell'associazione, una proprietà di destinazione, un'origine di associazione e un percorso al valore nell'origine di associazione da usare. Per altre informazioni su questi concetti di data binding, vedere Panoramica del data binding.

Utilizzare la Path proprietà per specificare il valore di origine a cui si vuole associare:

  • Nel caso più semplice, il Path valore della proprietà è il nome della proprietà dell'oggetto di origine da utilizzare per l'associazione, ad esempio Path=PropertyName.

  • Le sottoproprietà di una proprietà possono essere specificate da una sintassi simile a quella usata in C#. Ad esempio, la clausola Path=ShoppingCart.Order imposta l'associazione sulla sottoproprietà Order dell'oggetto o la proprietà ShoppingCart.

  • Per eseguire l'associazione a una proprietà associata, racchiuderla tra parentesi. Ad esempio, per eseguire l'associazione alla proprietà DockPanel.Dockassociata , la sintassi è Path=(DockPanel.Dock).

  • Gli indicizzatori di una proprietà possono essere specificati all'interno di parentesi quadre dopo il nome della proprietà in cui viene applicato l'indicizzatore. La clausola Path=ShoppingCart[0] ad esempio imposta l'associazione all'indice corrispondente al modo in cui l'indicizzazione interna della proprietà gestisce la stringa letterale "0". Sono supportati anche più indicizzatori.

  • Indicizzatori e sottoproprietà possono essere combinati in una clausola Path, ad esempio,Path=ShoppingCart.ShippingInfo[MailingAddress,Street].

  • All'interno degli indicizzatori è possibile specificare più parametri di indicizzatore separati da virgole (,). È possibile specificare tra parentesi il tipo di ogni parametro. È possibile ad esempio avere Path="[(sys:Int32)42,(sys:Int32)24]", dove è stato eseguito il mapping di sys allo spazio dei nomi System.

  • Quando l'origine è una visualizzazione di raccolta, è possibile specificare l'elemento corrente con una barra (/). La clausola Path=/ ad esempio imposta l'associazione all'elemento corrente nella visualizzazione. Quando l'origine è una raccolta, questa sintassi specifica l'elemento corrente della visualizzazione di raccolta predefinita.

  • Barre e nomi di proprietà possono essere combinate per attraversare le proprietà che sono raccolte. Path=/Offices/ManagerName ad esempio specifica l'elemento corrente della raccolta di origine, che contiene una proprietà Offices che è anche una raccolta. L'elemento corrente è un oggetto che contiene una proprietà ManagerName.

  • È possibile usare facoltativamente un percorso con il punto (.) per eseguire l'associazione all'origine corrente. Ad esempio, Text="{Binding}" equivale a Text="{Binding Path=.}".

Per informazioni sulla sintassi del percorso, vedere Cenni preliminari sulle dichiarazioni di binding o sintassi XAML di PropertyPath.

Per le associazioni XML, vedere la XPath proprietà .

Per eseguire l'associazione a un intero oggetto, non è necessario specificare la Path proprietà . Per altre informazioni, vedere "Specifica del percorso del valore" in Panoramica del data binding.

Si applica a