2008-09-10 14 views
19

En WPF, ¿es posible que un DataTrigger se vincule a una propiedad adjunta?¿Se puede vincular un DataTrigger a una propiedad adjunta?

Básicamente, quiero utilizar un convertidor en una propiedad adjunta para proporcionar un estilo cuando se ha roto una regla de validación particular. Estoy usando marcado como el siguiente:

<DataTrigger Binding="{Binding Path=Validation.Errors, 
         RelativeSource={RelativeSource Self}, 
         Converter={StaticResource RequiredToBoolConverter}}" 
         Value="True"> 
    <Setter Property="Background" Value="LightGreen" /> 
</DataTrigger> 

Sin embargo, cuando este funciona, me sale el siguiente:

System.Windows.Data Error: 39 : BindingExpression path error: 'Validation' property not found on 'object' ''TextBox' (Name='')'. BindingExpression:Path=Validation.Errors; DataItem='TextBox' (Name=''); target element is 'TextBox' (Name=''); target property is 'NoTarget' (type 'Object')

Si cambio de ruta de enlace DataTrigger a "Texto", que no entiendo la error de enlace de datos (pero, por supuesto, no proporciona el comportamiento que estoy buscando).

Respuesta

27

Usted necesita para envolver la propiedad entre paréntesis:

<DataTrigger Binding="{Binding Path=(Validation.Errors).YourAttachedProperty,... 
+4

Esto está documentado en MSDN en http://msdn.microsoft.com/en-us/library/ms752300.aspx#Path_Syntax –

+0

@M. Dudley, ¡el enlace ya no funciona! –

+2

Nuevo enlace: https://msdn.microsoft.com/library/ms752300%28v=vs.100%29.aspx#Path_Syntax –

Cuestiones relacionadas