gpt4 book ai didi

wpf - 一键使用两个 MultiDataTrigger

转载 作者:行者123 更新时间:2023-12-04 04:54:33 25 4
gpt4 key购买 nike

我有 MultiDataTrigger看起来像这样:

<Style x:Key="btnStyle" TargetType="{x:Type Button}" BasedOn="{StaticResource BaseBtnStyle}">
<Setter Property="UIElement.IsEnabled" Value="False" />
<Setter Property="Margin" Value="3,2"/>
<Setter Property="Template" Value="{DynamicResource GrayButtonTemplate}"/>

<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding Num}" Value="1"/>
<Condition Binding="{Binding Str}" Value="aaa"/>
</MultiDataTrigger.Conditions>

<Setter Property="UIElement.IsEnabled" Value="True" />
</MultiDataTrigger>
</Style.Triggers>
</Style>

目标是一旦 str = aaa 和 Num = 1,按钮就会被启用。

有用。

问题是我希望按钮启用 即使 Num = 2 (和 str = aaa)

我尝试添加更多 MultiDataTrigger在第一个之后:
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding Num}" Value="2"/>
<Condition Binding="{Binding Str}" Value="aaa"/>
</MultiDataTrigger.Conditions>

<Setter Property="UIElement.IsEnabled" Value="True" />
</MultiDataTrigger>

他没有提到它, 该按钮仅在 Num = 1 时启用。

还有另一种方法可以做到这一点吗?

最佳答案

我能看到的最简单的解决方案是创建 IsEnabled对象中的属性,其中您有 StrNum

public bool IsEnabled
{
get
{
return (Num == 1 || Num == 2) && Str == "aaa";
}
}

绑定(bind) IsEnabled在您的 Style
<Setter Property="IsEnabled" Value="{Binding Path=IsEnabled}"/>

并且每当 StrNum更改通知 IsEnabled也改变

关于wpf - 一键使用两个 MultiDataTrigger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16937728/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com