ToggleButton 中的图像在 WPF 中显示不正确

The image in ToggleButton is not displayed properly in WPF

我正在尝试在 ToggleButton 中将图像放在文本之前。一切进行得都很顺利。但是图像显示不正确。我在这里放大了图像,以便您可以看到我在说什么。如您所见,图像的某些部分显示不正确。

我要显示的图像

结果

缩放结果

<BitmapImage x:Key="ColumnsLayoutMiniIcon" UriSource="pack://application:,,,/Main/Resources/dark/images/mini/columns_layout_mini_icon.png"/>

    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ToggleButton">
                <StackPanel Orientation="Horizontal">
                    <Image x:Name="Border" Width="13" Height="13" Source="{StaticResource ColumnsLayoutMiniIcon}">
                    </Image>
                    <Border x:Name="Content"
                            Padding="10 0 10 0">
                        <ContentPresenter HorizontalAlignment="Center" 
                                          VerticalAlignment="Center" 
                                          Margin="-2 -3 0 0"
                                          RecognizesAccessKey="True" />
                    </Border>                        
                </StackPanel>
                <ControlTemplate.Triggers>
                    <Trigger Property="IsMouseOver" Value="True">
                        <Setter TargetName="Border" Property="Cursor" Value="Hand"/>
                    </Trigger>
                    <Trigger Property="IsChecked" Value="False">
                    </Trigger>
                    <Trigger Property="IsChecked" Value="True">

                    </Trigger>

                    <Trigger Property="IsChecked" Value="False">
                        <Setter Property="Foreground" Value="LightGray"/>
                    </Trigger>
                </ControlTemplate.Triggers>

            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

<RadioButton Content="Plan View"
             GroupName="View"
             Style="{StaticResource BaseToggleButton}"
             Checked="SwitchToPlanView_Selected"
             IsEnabled="{Binding SwitchToModelViewsEnabled}"
             IsChecked="{Binding SwitchToPlanViewSelected}">
</RadioButton>

UseLayoutRounding="true" 添加到 Window 元素的根目录。这将确保图片与像素对齐,并且不会显示奇怪的伪像。