Binding.Path Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece la ruta de acceso a la propiedad de origen de enlace.
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
Valor de propiedad
Ruta de acceso al origen de enlace. De manera predeterminada, es null
.
Ejemplos
En el ejemplo siguiente se muestra un desencadenador de estilo que crea un ToolTip que notifica un mensaje de error de validación. El valor del establecedor se enlaza al contenido de error del actual TextBox (mediante TextBox el estilo ) mediante la RelativeSource propiedad . Para obtener más información sobre este ejemplo, vea How to: Implement Binding Validation.
<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>
Comentarios
Cada enlace normalmente tiene estos cuatro componentes: un objeto de destino de enlace, una propiedad de destino, un origen de enlace y una ruta de acceso al valor del origen de enlace que se va a usar. Para obtener más información sobre estos conceptos de enlace de datos, consulte Introducción al enlace de datos.
Use la propiedad Path para especificar el valor de origen al que desea enlazar:
En el caso más simple, el valor de la propiedad Path es el nombre de la propiedad del objeto de origen que se utilizará para el enlace, como
Path=PropertyName
.Las subpropiedades de una propiedad se pueden especificar mediante una sintaxis similar a la usada en C#. Por ejemplo, la cláusula
Path=ShoppingCart.Order
define el enlace a la subpropiedadOrder
del objeto o la propiedadShoppingCart
.Para enlazar a una propiedad adjunta, coloque paréntesis alrededor de esta propiedad. Por ejemplo, para enlazar a la propiedad adjunta DockPanel.Dock, la sintaxis es
Path=(DockPanel.Dock)
.Los indizadores de una propiedad pueden especificarse entre corchetes después del nombre de la propiedad donde se aplica el indizador. Por ejemplo, la cláusula
Path=ShoppingCart[0]
establece el enlace al índice que se corresponde a cómo la indización interna de la propiedad administra la cadena literal "0". También se admiten varios indexadores.Los indizadores y las subpropiedades se pueden combinar en una cláusula
Path
; por ejemplo,Path=ShoppingCart.ShippingInfo[MailingAddress,Street].
.Dentro de los indizadores, puede tener varios parámetros de indizador separados por comas (,). El tipo de cada parámetro se puede especificar entre paréntesis. Por ejemplo, puede tener
Path="[(sys:Int32)42,(sys:Int32)24]"
, dondesys
se asigna al espacio de nombresSystem
.Cuando el origen es una vista de colección, el elemento actual se puede especificar con una barra diagonal (/). Por ejemplo, la cláusula
Path=/
establece el enlace al elemento actual de la vista. Cuando el origen es una colección, esta sintaxis especifica el elemento actual de la vista de colección predeterminada.Los nombres de propiedad y las barras diagonales se pueden combinar para recorrer las propiedades que son colecciones. Por ejemplo,
Path=/Offices/ManagerName
especifica el elemento actual de la colección de origen, que contiene una propiedadOffices
que también es una colección. Su elemento actual es un objeto que contiene una propiedadManagerName
.Opcionalmente, se puede usar una ruta de acceso de punto (.) para enlazar con el origen actual. Por ejemplo,
Text="{Binding}"
es equivalente aText="{Binding Path=.}"
.
Para obtener información sobre la sintaxis de ruta de acceso, consulta Binding Declarations Overview o PropertyPath XAML Syntax.
Para los enlaces XML, consulte la XPath propiedad .
Para enlazar a un objeto completo, no es necesario especificar la Path propiedad . Para obtener más información, vea "Especificar la ruta de acceso al valor" en Información general del enlace de datos.