Kri*_*rip 6 c# wpf triggers datatrigger multidatatrigger
Style当属性和数据值为true时,我需要能够更改控件.例如,我的绑定数据有一个IsDirty属性.如果IsDirty为true,我想更改控件的背景颜色并选择控件.我找到了MultiTrigger和MultiDataTrigger类......但在这种情况下,我需要以某种方式触发数据和属性.我怎样才能做到这一点?
另一个注意事项:我需要能够在XAML背后的代码中执行此操作.
Sam*_*ack 12
MultiDataTrigger与DependencyProperties一样,也适用于普通属性.只需将绑定中的Path设置为依赖项属性的名称即可.
您需要注意设置该绑定的源,但是默认情况下,source是触发器附加到的元素的DataContext.如果触发器在可选对象的样式中使用,则可以使用Binding的RelativeSource属性:
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding Path=IsDirty}" Value="True" />
<Condition Binding="{Binding Path=IsSelected, RelativeSource={RelativeSource Self}}" Value="True" />
</MultiDataTrigger.Conditions>
<Setter Property="Background" Value="Cyan" />
</MultiDataTrigger>
Run Code Online (Sandbox Code Playgroud)