ControlTemplate with Triggers
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="RSS Reader"> <Grid xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Grid.Resources> <ControlTemplate x:Key="buttonTemplate"> <Grid> <Ellipse x:Name="outerCircle" Width="100" Height="100"> <Ellipse.Fill> <LinearGradientBrush StartPoint="0,0" EndPoint="0,1"> <GradientStop Offset="0" Color="Blue"/> <GradientStop Offset="1" Color="Red"/> </LinearGradientBrush> </Ellipse.Fill> </Ellipse> </Grid> <ControlTemplate.Triggers> <Trigger Property="Button.IsMouseOver" Value="True"> <Setter TargetName="outerCircle" Property="Fill" Value="Orange"/> </Trigger> <Trigger Property="Button.IsPressed" Value="True"> <Setter Property="RenderTransform"> <Setter.Value> <ScaleTransform ScaleX=".9" ScaleY=".9"/> </Setter.Value> </Setter> <Setter Property="RenderTransformOrigin" Value=".5,.5"/> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Grid.Resources> <Button Template="{StaticResource buttonTemplate}">OK</Button> </Grid> </Window>