Binding.Path Egenskap

Definition

Hämtar eller anger sökvägen till egenskapen bindningskälla.

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

Egenskapsvärde

Sökvägen till bindningskällan. Standardvärdet är null.

Exempel

I följande exempel visas en formatutlösare som skapar en ToolTip som rapporterar ett verifieringsfelmeddelande. Värdet för settern binder till felinnehållet i den aktuella TextBox ( TextBox med hjälp av formatet) med hjälp av RelativeSource egenskapen . Mer information om det här exemplet finns i Så här implementerar du bindningsverifiering.

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

Kommentarer

Varje bindning har vanligtvis följande fyra komponenter: ett bindningsmålobjekt, en målegenskap, en bindningskälla och en sökväg till värdet i bindningskällan som ska användas. Mer information om dessa databindningsbegrepp finns i Översikt över databindning.

Använd egenskapen Path för att ange det källvärde som du vill binda till:

  • I det enklaste fallet Path är egenskapsvärdet namnet på egenskapen för källobjektet som ska användas för bindningen, till exempel Path=PropertyName.

  • Underegenskaper för en egenskap kan anges med en syntax som liknar den som används i C#. Satsen Path=ShoppingCart.Order anger till exempel bindningen till underegenskapen Order för objektet eller egenskapen ShoppingCart.

  • Om du vill binda till en bifogad egenskap placerar du parenteser runt den anslutna egenskapen. Om du till exempel vill binda till den anslutna egenskapen DockPanel.Dockär Path=(DockPanel.Dock)syntaxen .

  • Indexerare för en egenskap kan anges inom hakparenteser efter egenskapsnamnet där indexeraren tillämpas. Satsen Path=ShoppingCart[0] anger till exempel bindningen till det index som motsvarar hur egenskapens interna indexering hanterar literalsträngen "0". Flera indexerare stöds också.

  • Indexerare och underegenskaper kan blandas i en Path sats, till exempel Path=ShoppingCart.ShippingInfo[MailingAddress,Street].

  • Inuti indexerare kan du ha flera indexerarparametrar avgränsade med kommatecken (,). Typen av varje parameter kan anges med parenteser. Du kan till exempel ha Path="[(sys:Int32)42,(sys:Int32)24]", där sys mappas till System namnområdet.

  • När källan är en samlingsvy kan det aktuella objektet anges med ett snedstreck (/). Satsen Path=/ anger till exempel bindningen till det aktuella objektet i vyn. När källan är en samling anger den här syntaxen det aktuella objektet i standardsamlingsvyn.

  • Egenskapsnamn och snedstreck kan kombineras för att bläddra igenom egenskaper som är samlingar. Till exempel Path=/Offices/ManagerName anger det aktuella objektet i källsamlingen, som innehåller en Offices egenskap som också är en samling. Det aktuella objektet är ett objekt som innehåller en ManagerName egenskap.

  • Du kan också använda en punktsökväg (.) för att binda till den aktuella källan. Text="{Binding}" motsvarar till exempel Text="{Binding Path=.}".

Information om sökvägssyntax finns i Översikt över bindningsdeklarationer eller PropertyPath XAML-syntax.

Information om XML-bindningar finns i egenskapen XPath .

Om du vill binda till ett helt objekt behöver du inte ange egenskapen Path . Mer information finns i "Ange sökvägen till värdet" i Översikt över databindning.

Gäller för