wpf dropshadow

Sombra caída de WPF



dropshadow (1)

Dos opciones:

Opción 1: agregue un elemento de borde con el efecto como hermano del árbol de elementos de borde / rectángulo que tiene. Algo como esto:

<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>

Opción 2: coloque el rectángulo como un hermano del elemento de borde de esta manera:

<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>

NOTA: Tendrá que modificar el diseño de la segunda solución para que el rectángulo se alinee donde lo desee.

Actualmente estoy haciendo algo en WPF que tiene un borde que contiene una cuadrícula y otros controles. El problema al que me enfrento es que cada vez que configuro la propiedad Border.Effect en un efecto de sombra paralela, cada control contenido en el borde ahora tiene una sombra paralela. ¿Hay una manera de establecer la sombra solo en el borde y no todos los controles contenidos en el borde?

Aquí hay un breve ejemplo de mi código:

<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>