.net 数据触发器未触发
我有以下xaml:.net 数据触发器未触发,.net,wpf,xaml,datatrigger,.net,Wpf,Xaml,Datatrigger,我有以下xaml: <DockPanel> <DockPanel> <CheckBox IsChecked="{Binding Path=Test}" /> <CheckBox IsChecked="{Binding Path=Test}" /> </DockPanel> <DockPanel DockPanel.Dock="Left" Width="10" Back
<DockPanel>
<DockPanel>
<CheckBox IsChecked="{Binding Path=Test}" />
<CheckBox IsChecked="{Binding Path=Test}" />
</DockPanel>
<DockPanel DockPanel.Dock="Left" Width="10" Background="Blue">
<DockPanel.Style>
<Style>
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Test}" Value="True">
<Setter Property="DockPanel.Background" Value="Yellow" />
</DataTrigger>
</Style.Triggers>
</Style>
</DockPanel.Style>
</DockPanel>
</DockPanel>
现在-两个复选框正确链接-检查一个复选框将检查另一个复选框-但是datatrigger根本没有启动
我做错了什么?这里的问题是
您当前正在直接在DockPanel上将背景设置为蓝色。此显式属性将覆盖触发器设置的任何值
相反,必须将原始“背景”设置为样式中的setter
<DockPanel DockPanel.Dock="Left" Width="10">
<DockPanel.Style>
<Style>
<Setter Property="DockPanel.Background" Value="Blue" />
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Test}" Value="True">
<Setter Property="DockPanel.Background" Value="Yellow" />
</DataTrigger>
</Style.Triggers>
</Style>
</DockPanel.Style>
</DockPanel></DockPanel>
谢谢很有趣的是,一个小小的疏忽就让一切都无法进行。谢谢,我花了10多条线索,你得到了我需要的答案:)。@Andrew Shepherd先生,你是一个传奇!