WPF 在 运行 模式下忽略 d:IsHidden="True"(在设计模式下正常)

WPF ignores d:IsHidden="True" in run mode (OK in design mode)

为什么左图在设计模式下隐藏,而在运行时不隐藏?看起来 WPF 忽略了属性 "IsHidden"。新的空解决方案,没有一行代码 - 只是 Blend。

这是我的代码

<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" x:Class="WpfApplication222.MainWindow"
    Title="MainWindow" Height="350" Width="525">
<Grid>
    <Image HorizontalAlignment="Left" Height="157.093" Margin="98.316,88.148,0,0" VerticalAlignment="Top" Width="95" Source="pack://siteoforigin:,,,/img0.jpg" RenderTransformOrigin="0.5,0.5" d:IsHidden="True">
        <Image.RenderTransform>
            <TransformGroup>
                <ScaleTransform/>
                <SkewTransform/>
                <RotateTransform Angle="-37.445"/>
                <TranslateTransform/>
            </TransformGroup>
        </Image.RenderTransform>
    </Image>
    <Image HorizontalAlignment="Left" Height="122" Margin="350,92,0,0" VerticalAlignment="Top" Width="106" RenderTransformOrigin="0.5,0.5" Source="pack://siteoforigin:,,,/img14.jpg">
        <Image.RenderTransform>
            <TransformGroup>
                <ScaleTransform/>
                <SkewTransform/>
                <RotateTransform Angle="13.144"/>
                <TranslateTransform/>
            </TransformGroup>
        </Image.RenderTransform>
    </Image>
</Grid>

在 XAML 的顶部,您会看到以下内容:

mc:Ignorable="d" 

这基本上就是说 "Ignore anything prefixed with d: at runtime."

您可以删除此行(不推荐),或改用 Visibility 属性。哪个不会被忽略。