2008-09-10 119 views
19

在WPF中,DataTrigger是否可以綁定到附加屬性?你可以將DataTrigger綁定到附加屬性嗎?

我基本上想要在附加屬性上使用轉換器來在特定的驗證規則被破壞時提供樣式。我使用的標記類似如下:

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

然而,當這個運行時,我得到如下:

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

如果我更改了DataTrigger約束力的路徑「文本」,我沒有得到數據綁定錯誤(但它當然不提供我正在尋找的行爲)。

回答

27

你需要用財產括號:

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

這是在http://msdn.microsoft.com/en-us/library/ms752300.aspx#Path_Syntax – 2009-11-30 18:11:51

相關問題