0

ドロップ シャドウを追加するラベルのスタイルを作成しました。

<Style TargetType="Label" x:Key="BigLabel">
    <Setter Property="FontSize" Value="35" />
    <!-- some more... -->
    <Setter Property="Effect">
        <Setter.Value>
            <DropShadowEffect BlurRadius="0" Opacity="0.9" ShadowDepth="5" />
        </Setter.Value>
    </Setter>
</Style>

スタイルを使用したいラベルの 1 つが回転しています。この方法でスタイルを適用すると、次のようになります。

<Label Content="Awesome" Style="{StaticResource BigLabel}" >
    <Label.LayoutTransform>
        <RotateTransform Angle="-90" />
    </Label.LayoutTransform>
</Label>

その結果、ドロップ シャドウはラベルの視点 (右下) から見た方向と同じですが、ユーザーの視点 (右上) から見た方向は異なります。複数のラベルがあり、回転したものとそうでないものがあるため、すべての影がユーザーの視点から見た同じ方向、右下になるようにします。

つまり、回転したラベルに別のラベルを設定するか、回転Directionに影付きのスタイルを適用するように WPF に指示する必要があります。今私は疑問に思っています:

最初に回転してからスタイルを適用するように WPF に指示する方法はありますか?

4

1 に答える 1

1

これを試して、Direction 属性を使用します。

    <Style TargetType="Label" x:Key="BigLabel">
        <Setter Property="FontSize" Value="35" />
        <!-- some more... -->
        <Setter Property="Effect">
            <Setter.Value>
                <DropShadowEffect BlurRadius="5" Opacity="0.92" ShadowDepth="3" Direction="225" />
            </Setter.Value>
        </Setter>
    </Style>
于 2013-10-10T13:24:40.147 に答える