2013-07-01 22 views
9

Tôi đã viết mã này và có ngoại lệ: Thuộc tính nền không trỏ đến phụ thuộc vào đường dẫn '(0). (1)'Thuộc tính nền không trỏ đến một phụ thuộc vào đường dẫn '(0). (1)'

Tôi thấy vấn đề này trong các bài đăng khác trong diễn đàn nhưng didnt đã thành lập một giải pháp.

<WrapPanel.Style> 
    <Style> 
    <Style.Triggers> 
     <Trigger Property "WrapPanel.Visibility" Value="Visible">        
     <Trigger.EnterActions> 
      <BeginStoryboard HandoffBehavior="Compose"> 
      <Storyboard RepeatBehavior="Forever" AutoReverse="True"> 
       <ColorAnimation 
       Storyboard.TargetProperty="(WrapPanel.Background).(SolidColorBrush.Color)" 
       Duration="00:00:01" To="Red"/> 
      </Storyboard> 
      </BeginStoryboard> 
     </Trigger.EnterActions> 
     </Trigger> 
    </Style.Triggers> 
    </Style> 
</WrapPanel.Style> 

Bất kỳ trợ giúp nào về điều này? Cảm ơn

Trả lời

19

Bạn rất có thể không đặt giá trị cho cọ nền ban đầu. Bạn có thể làm như vậy với một setter phong cách, hoặc người nào khác chỉ cần đặt một giá trị trên bảng điều khiển trực tiếp. Setter phong cách có lẽ là tốt hơn:

<Setter Property="Background"> 
    <Setter.Value> 
     <SolidColorBrush Color="Blue"/> 
    </Setter.Value> 
</Setter> 

Lưu ý rằng bạn cũng có thể chỉ định TargetType tài sản trên phong cách của bạn, do đó bạn không cần phải thêm tiền tố tất cả các tài liệu tham khảo hữu với WrapPanel:

<Style TargetType="WrapPanel"> 
+0

Tahnks! đó là công việc – Maya

5

Bạn phải thiết lập thuộc tính Background của WrapPanel! Nếu không hệ thống con WPF không nhận ra nó như là một SolidColorBrush (có thể là một bàn chải nữa).

<WrapPanel Background="White"> 
... 
</WrapPanel> 

là đủ.