[Multi] DataTrigger“OR”语句?

时间:2011-10-25 12:05:32

标签: wpf datatrigger

我希望我的图像可见性属性在我的绑定表格字段

时设置为隐藏
Weblink = NULL **OR** Weblink = ""

使用MultiDataTrigger,您可以在以下逻辑中测试几个条件:

"IF FieldA = 1 **AND** FieldB = 2 THEN"

但我需要的是

"IF FieldA = 1 **OR** FieldA = 2 THEN"

这是我的xaml whitch的一部分仅在Weblink =“”时才有效;当Weblink = NULL时,我的图像保持可见

<Image.Style>
    <Style TargetType="{x:Type Image}">
        <Style.Triggers>
            <DataTrigger Binding="{Binding Weblink}" Value="Null">
                <Setter  Property="Visibility" Value="Hidden" />
            </DataTrigger>
            <DataTrigger Binding="{Binding Weblink}" Value="">
                <Setter  Property="Visibility" Value="Hidden" />
            </DataTrigger>
        </Style.Triggers>
    </Style>
</Image.Style>  

提前致谢! Spoelle

2 个答案:

答案 0 :(得分:6)

您所写的内容等于Weblink == "Null",但您需要Weblink == null

当Weblink属性返回null时,在DataTrigger中尝试Value="{x:Null}"

答案 1 :(得分:4)

我建议使用x:Null标记扩展名,为了清楚起见,使用x:Static标记扩展名明确指定空字符串:

<DataTrigger Binding="{Binding Weblink}" Value="{x:Null}">
    <Setter  Property="Visibility" Value="Hidden" />
</DataTrigger>
<DataTrigger Binding="{Binding Weblink}" Value="{x:Static System:String.Empty}" >
    <Setter  Property="Visibility" Value="Hidden" />
</DataTrigger>

希望这有帮助!