且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如果在 Element 中设置,WPF 触发器将不会设置属性

更新时间:2022-06-12 06:21:51

这是正常的依赖属性值优先级.将它设置在 Image 上是 #3,而在 Style 触发器中的优先级较低,为 #6.

This is the normal Dependency Property Value Precedence. Setting it on Image is at #3, while in the Style trigger is at a lower precedence of #6.

您可以改为这样做:

<Image Name="image1" Stretch="Uniform" Source="/Affinity;component/Images/affinity_logo.png">
    <Image.Style>
        <Style TargetType="Image">
            <Setter Property="Visibility" Value="Hidden" />
            <Style.Triggers>
                <DataTrigger Binding="{Binding Items.Count, ElementName=tabcontrolworkspaces}"
                    Value="0">
                    <Setter Property="Visibility" Value="Visible" />
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Image.Style>
</Image>