0

これは通常どのように処理されますか?私はこのxamlを持っています:

    <Border Grid.Column="1" HorizontalAlignment="Right" 
        VerticalAlignment="Top" Margin="10,25,10,0" Opacity="0.7" 
        BorderBrush="Black" BorderThickness="1" CornerRadius="5">
        <StackPanel>
            <StackPanel.Background>
                <LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
                    <GradientStop Color="LightGray" Offset="0.0" />
                    <GradientStop Color="Gray" Offset="1.0" />
                </LinearGradientBrush>
            </StackPanel.Background>

StackPanelの左上と右上の角はLightGrayであり、境界線の上にあるように見えます。そのため、丸みを帯びた黒い角の中央にLightGrayピクセルが1つまたは2つあり、丸みを分割しています。下の境界線は黒ではなく灰色です。

上記のコードで得られると思ったのは、角が丸いStackPanelです...

4

1 に答える 1

1

StackpanelではなくBorderに背景を配置することをお勧めします

<Border Grid.Column="1" HorizontalAlignment="Right" 
    VerticalAlignment="Top" Margin="10,25,10,0" Opacity="0.7" 
    BorderBrush="Black" BorderThickness="1" CornerRadius="5">
    <Border.Background>
        <LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
            <GradientStop Color="LightGray" Offset="0.0" />
            <GradientStop Color="Gray" Offset="1.0" />
        </LinearGradientBrush>
    </Border.Background>
    <StackPanel>
        <!-- Items here -->
    </StackPanel>
</Border>
于 2012-09-06T16:26:39.783 に答える