grazie per la risposta, mi hai chiarito sinteticamente molti aspetti.
per quanto riguarda quello che cerco di fare, guarda il seguente codice.
Definisce un template per le textbox così che basta creare una nuova textbox ed impostare lo style per inglobargli anche gli elementi border e grid , allo stesso modo vorrei poter creare una window (anche a runtime) ed impostargli lo style inglobando gli elementi descritti nel post precedente (border con shadow)
codice:
<Style x:Key="stile_TextBox" TargetType="TextBox">
<Setter Property="FontFamily" Value="Calibri" />
<Setter Property="FontSize" Value="18" />
<Setter Property="Height" Value="Auto" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate
TargetType="{x:Type TextBox}"
x:Name="MainControlTemplate"
>
<Border
x:Name="Border"
Margin="5"
Padding="2"
CornerRadius="2"
BorderThickness="0"
BorderBrush="#FFCCCCCC"
Background="White"
SnapsToDevicePixels="True"
>
<Grid>
<ScrollViewer
x:Name="PART_ContentHost"
VerticalAlignment="Center"
HorizontalAlignment="Left"
Margin="0"
/>
</Grid>
<Border.Effect>
<DropShadowEffect
x:Name="BorderShadow"
RenderingBias="Performance"
ShadowDepth="0"
BlurRadius="10"
Color="#FFCCCCCC"
/>
</Border.Effect>
</Border>
<ControlTemplate.Resources>
<SolidColorBrush x:Key="DisabledBackgroundBrush" Color="#FF999999" />
<SolidColorBrush x:Key="DisabledForegroundBrush" Color="#FFCCCCCC" />
</ControlTemplate.Resources>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter TargetName="Border" Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" />
<Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}" />
</Trigger>
<EventTrigger RoutedEvent="TextBox.GotFocus">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetName="BorderShadow"
Storyboard.TargetProperty="Color"
To="Red"
Duration="0:0:0.2"
/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
<EventTrigger RoutedEvent="TextBox.LostFocus">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetName="BorderShadow"
Storyboard.TargetProperty="Color"
To="#FFCCCCCC"
Duration="0:0:0.2"
/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>