WPF 样式触发器不适用于自定义枚举
WPF Style Trigger not working with custom Enum
你好,我想知道为什么我的 Style Trigger 不工作取决于自定义枚举?代码如下:
<Style x:Key="FontAwesomeIconBase"
BasedOn="{StaticResource FontAwesomeFont}"
TargetType="{x:Type Grid}">
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Style.Triggers>
<DataTrigger Binding="{Binding Tag}" Value="FontIcon.None">
<Setter Property="Visibility" Value="Hidden"></Setter>
</DataTrigger>
<Trigger Property="Tag" Value="FontIcon.None">
<Setter Property="Visibility" Value="Hidden" />
</Trigger>
<Trigger Property="Tag" Value="None">
<Setter Property="Visibility" Value="Hidden" />
</Trigger>
<Trigger Property="Tag" Value="{x:Null}">
<Setter Property="Visibility" Value="Hidden" />
</Trigger>
</Style.Triggers>
</Style>
我尝试了 DataTrigger,但仍然无法正常工作。有什么想法吗?
在您的 Window/UserControl 文件中添加 Enum(定义的地方)的 xmlns(名称空间)引用,如下所示:
xmlns:font="clr-namespace:YourEnumNameSpace"
<DataTrigger Property="Tag" Value="{x:Static font:FontIcon.None}">
<Setter Property="Visibility" Value="Hidden"></Setter>
</DataTrigger>
使用 x:Static 关键字,其价值高于 EnumClassName.EnumValue。希望对你有帮助。
你好,我想知道为什么我的 Style Trigger 不工作取决于自定义枚举?代码如下:
<Style x:Key="FontAwesomeIconBase"
BasedOn="{StaticResource FontAwesomeFont}"
TargetType="{x:Type Grid}">
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Style.Triggers>
<DataTrigger Binding="{Binding Tag}" Value="FontIcon.None">
<Setter Property="Visibility" Value="Hidden"></Setter>
</DataTrigger>
<Trigger Property="Tag" Value="FontIcon.None">
<Setter Property="Visibility" Value="Hidden" />
</Trigger>
<Trigger Property="Tag" Value="None">
<Setter Property="Visibility" Value="Hidden" />
</Trigger>
<Trigger Property="Tag" Value="{x:Null}">
<Setter Property="Visibility" Value="Hidden" />
</Trigger>
</Style.Triggers>
</Style>
我尝试了 DataTrigger,但仍然无法正常工作。有什么想法吗?
在您的 Window/UserControl 文件中添加 Enum(定义的地方)的 xmlns(名称空间)引用,如下所示:
xmlns:font="clr-namespace:YourEnumNameSpace"
<DataTrigger Property="Tag" Value="{x:Static font:FontIcon.None}">
<Setter Property="Visibility" Value="Hidden"></Setter>
</DataTrigger>
使用 x:Static 关键字,其价值高于 EnumClassName.EnumValue。希望对你有帮助。