現在、グリッドやその他のコントロールを含む境界線を持つWPFで何かを作成しています。私が直面している問題は、Border.Effectプロパティをドロップシャドウエフェクトに設定するたびに、ボーダーに含まれるすべてのコントロールがドロップシャドウを持つようになることです。境界線に含まれるすべてのコントロールではなく、境界線だけに影を設定する方法はありますか?
これが私のコードの短い例です:
<Grid>
<Border Margin="68,67,60,67" BorderBrush="Black" BorderThickness="1" CornerRadius="10">
<Border.Effect>
<DropShadowEffect/>
</Border.Effect>
<Rectangle Fill="White" Stroke="Black" Margin="37,89,118,98" />
</Border>
</Grid>
2つの選択肢:
オプション1:境界要素を追加します。この要素には、境界要素/長方形要素ツリーの兄弟として効果があります。このようなもの:
<Grid>
<Border Margin="68,67,60,67"
BorderBrush="Black"
BorderThickness="1"
CornerRadius="10">
<Border.Effect>
<DropShadowEffect />
</Border.Effect>
</Border>
<Border Margin="68,67,60,67"
BorderBrush="Black"
BorderThickness="1"
CornerRadius="10">
<Rectangle Fill="White"
Stroke="Black"
Margin="37,89,118,98">
</Rectangle>
</Border>
</Grid>
オプション2:次のように、四角形を境界要素の兄弟として配置します。
<Grid>
<Border Margin="68,67,60,67"
BorderBrush="Black"
BorderThickness="1"
CornerRadius="10">
<Border.Effect>
<DropShadowEffect />
</Border.Effect>
</Border>
<Rectangle Fill="White"
Stroke="Black"
Margin="37,89,118,98">
</Rectangle>
</Grid>
注:2番目のソリューションのレイアウトを微調整して、希望する場所に四角形を並べる必要があります。