2008-09-10 21 views
19

Trong WPF, có thể cho một DataTrigger liên kết với một thuộc tính được đính kèm không?Bạn có thể liên kết DataTrigger với thuộc tính được đính kèm không?

Tôi về cơ bản muốn sử dụng trình chuyển đổi trên thuộc tính đính kèm để cung cấp kiểu khi quy tắc xác thực cụ thể bị hỏng. Tôi đang sử dụng đánh dấu như sau:

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

Tuy nhiên, khi này chạy, tôi nhận được như sau:

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

Nếu tôi thay đổi con đường bắt buộc DataTrigger của tôi để "Văn bản", tôi không nhận được lỗi databinding (nhưng tất nhiên nó không cung cấp hành vi mà tôi đang tìm kiếm).

Trả lời

27

Bạn cần phải bọc tài sản trong ngoặc đơn:

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

Đây là tài liệu trên MSDN tại http://msdn.microsoft.com/en-us/library/ms752300.aspx#Path_Syntax –

+0

@M. Dudley liên kết ist không còn hoạt động nữa! –

+2

Liên kết mới: https://msdn.microsoft.com/library/ms752300%28v=vs.100%29.aspx#Path_Syntax –

Các vấn đề liên quan