如何根据DataContext属性获取更改TextBlock颜色的触发器?

为什么以下代码会出现运行时错误:

Triggers集合的成员必须是EventTrigger类型

但EventTrigger元素没有Binding属性。

那么如何根据DataContext属性更改TextBlock的颜色?

XAML:

           

码:

 namespace TestTriggers { public partial class Window1 : Window { public Window1() { InitializeComponent(); DataContext = this; Status = "off"; } public string Status { get; set; } } } 

那是因为你只能直接在Trigger属性上设置事件触发器。

使用样式来实现您想要的效果:

  

以下对象具有可包含列出的触发器类型的触发器集合:

 FrameworkElement Style, ControlTemplate, DataTemplate ---------------- ------------------------------------ EventTrigger EventTrigger Trigger or MultiTrigger DataTrigger or MultiDataTrigger 

你可以用一种风格来做:

      

你没有关闭Style.Triggers有一个错字。 我发现我需要使用属性TextBlock.Background。 谢谢,你帮我解决了。