ボーダーに外側のグロー効果を与える方法は?
<Grid Width="200" Height="200">
<Grid.Background>
<RadialGradientBrush Center="0.5,0.5" GradientOrigin="0.5,0.5" RadiusX="0.8" RadiusY="0.8">
<RadialGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF123B5F" />
<GradientStop Offset="1" Color="#FF001F31" />
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</Grid.Background>
<Border Width="180" Height="180" Margin="10" Background="Transparent"
BorderBrush="White" BorderThickness="1">
<Border.BitmapEffect>
<OuterGlowBitmapEffect GlowColor="White" GlowSize="3" Opacity="1" />
</Border.BitmapEffect>
</Border>
</Grid>
私はこれを試しましたが、うまくいきません
BitmapEffects
は.NET 4.0ではサポートされなくなりました。
From [〜#〜] msdn [〜#〜]
重要.NET Framework 4以降では、BitmapEffectクラスは廃止されました。 BitmapEffectクラスを使用しようとすると、廃止された例外が発生します。 BitmapEffectクラスの廃止されていない代替手段はEffectクラスです。ほとんどの場合、Effectクラスは大幅に高速です。
同じことではありませんが、代わりにDropShadowEffect
を0に近いShadowDepth
で試すことができます。
例
<Border Width="180" Height="180" Margin="10" Background="Transparent"
BorderBrush="White" BorderThickness="2" Opacity="1.0">
<Border.Effect>
<DropShadowEffect ShadowDepth="0"
Color="White"
Opacity="1"
BlurRadius="5"/>
</Border.Effect>
</Border>
BitmapEffects
と上記のDropShadowEffect
の比較。 DropShadowEffect
を右に。