Advertisement
Guest User

Untitled

a guest
Oct 21st, 2012
373
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 6.39 KB | None | 0 0
  1. <Window
  2.     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3.     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4.     x:Class="WpfApplication3.MainWindow"
  5.     x:Name="Window"
  6.     Title="MainWindow"
  7.     Width="640" Height="480">
  8.  
  9.     <Window.Resources>
  10.         <Style TargetType="{x:Type Expander}">
  11.             <Style.Resources>
  12.                 <Style x:Key="ExpanderDownHeaderStyle" TargetType="{x:Type ToggleButton}">
  13.                     <Setter Property="Template">
  14.                         <Setter.Value>
  15.                             <ControlTemplate TargetType="{x:Type ToggleButton}">
  16.                                 <Border Padding="{TemplateBinding Padding}">
  17.                                     <Grid Background="Transparent" SnapsToDevicePixels="False">
  18.                                         <Grid.ColumnDefinitions>
  19.                                             <ColumnDefinition Width="19"/>
  20.                                             <ColumnDefinition Width="*"/>
  21.                                         </Grid.ColumnDefinitions>
  22.                                         <Ellipse x:Name="circle" HorizontalAlignment="Center" Height="19" Stroke="DarkGray" VerticalAlignment="Center" Width="19"/>
  23.                                         <Path x:Name="arrow" Data="M 1,1.5 L 4.5,5 L 8,1.5" HorizontalAlignment="Center" SnapsToDevicePixels="false" Stroke="#666" StrokeThickness="2" VerticalAlignment="Center"/>
  24.                                         <ContentPresenter Grid.Column="1" HorizontalAlignment="Left" Margin="4,0,0,0" RecognizesAccessKey="True" SnapsToDevicePixels="True" VerticalAlignment="Center"/>
  25.                                     </Grid>
  26.                                 </Border>
  27.                                 <ControlTemplate.Triggers>
  28.                                     <Trigger Property="IsChecked" Value="true">
  29.                                         <Setter Property="Data" TargetName="arrow" Value="M 1,4.5  L 4.5,1  L 8,4.5"/>
  30.                                     </Trigger>
  31.                                     <Trigger Property="IsMouseOver" Value="true">
  32.                                         <Setter Property="Stroke" TargetName="circle" Value="#FF3C7FB1"/>
  33.                                         <Setter Property="Stroke" TargetName="arrow" Value="#222"/>
  34.                                     </Trigger>
  35.                                     <Trigger Property="IsPressed" Value="true">
  36.                                         <Setter Property="Stroke" TargetName="circle" Value="#FF526C7B"/>
  37.                                         <Setter Property="StrokeThickness" TargetName="circle" Value="1.5"/>
  38.                                         <Setter Property="Stroke" TargetName="arrow" Value="#FF003366"/>
  39.                                     </Trigger>
  40.                                 </ControlTemplate.Triggers>
  41.                             </ControlTemplate>
  42.                         </Setter.Value>
  43.                     </Setter>
  44.                 </Style>
  45.             </Style.Resources>
  46.             <Setter Property="Template">
  47.                 <Setter.Value>
  48.                     <ControlTemplate TargetType="{x:Type Expander}">
  49.                         <Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="3" SnapsToDevicePixels="true">
  50.                             <DockPanel>
  51.                                 <ToggleButton x:Name="HeaderSite" ContentTemplate="{TemplateBinding HeaderTemplate}" ContentTemplateSelector="{TemplateBinding HeaderTemplateSelector}" Content="{TemplateBinding Header}" DockPanel.Dock="Top" Foreground="{TemplateBinding Foreground}" FontWeight="{TemplateBinding FontWeight}" FontStyle="{TemplateBinding FontStyle}" FontStretch="{TemplateBinding FontStretch}" FontSize="{TemplateBinding FontSize}" FontFamily="{TemplateBinding FontFamily}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" IsChecked="{Binding IsExpanded, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Margin="1" MinWidth="0" MinHeight="0" Padding="{TemplateBinding Padding}" Style="{StaticResource ExpanderDownHeaderStyle}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
  52.                                 <ContentPresenter  x:Name="ExpandSite" DockPanel.Dock="Bottom" Focusable="false" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
  53.                                     <ContentPresenter.LayoutTransform>
  54.                                         <ScaleTransform ScaleX="1" ScaleY="0"/>
  55.                                     </ContentPresenter.LayoutTransform>
  56.                                 </ContentPresenter>
  57.                             </DockPanel>
  58.                         </Border>
  59.                         <ControlTemplate.Triggers>
  60.                             <EventTrigger RoutedEvent="Expander.Expanded">
  61.                                 <BeginStoryboard>
  62.                                     <Storyboard Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="LayoutTransform.ScaleY">
  63.                                         <DoubleAnimation To="1" Duration="0:0:0.2"/>
  64.                                     </Storyboard>
  65.                                 </BeginStoryboard>
  66.                             </EventTrigger>
  67.                             <EventTrigger RoutedEvent="Expander.Collapsed">
  68.                                 <BeginStoryboard>
  69.                                     <Storyboard Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="LayoutTransform.ScaleY">
  70.                                         <DoubleAnimation To="0" Duration="0:0:0.2"/>
  71.                                     </Storyboard>
  72.                                 </BeginStoryboard>
  73.                             </EventTrigger>
  74.                         </ControlTemplate.Triggers>
  75.                     </ControlTemplate>
  76.                 </Setter.Value>
  77.             </Setter>
  78.         </Style>
  79.     </Window.Resources>
  80.  
  81.     <Grid x:Name="LayoutRoot">
  82.         <Expander>
  83.             <Expander.Content>                
  84.                 <StackPanel>
  85.                     <TextBlock Text="Hello World !"/>
  86.                     <TextBox/>
  87.                 </StackPanel>
  88.             </Expander.Content>            
  89.         </Expander>
  90.     </Grid>
  91. </Window>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement