Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <Window
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- x:Class="WpfApplication3.MainWindow"
- x:Name="Window"
- Title="MainWindow"
- Width="640" Height="480">
- <Window.Resources>
- <Style TargetType="{x:Type Expander}">
- <Style.Resources>
- <Style x:Key="ExpanderDownHeaderStyle" TargetType="{x:Type ToggleButton}">
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="{x:Type ToggleButton}">
- <Border Padding="{TemplateBinding Padding}">
- <Grid Background="Transparent" SnapsToDevicePixels="False">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="19"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <Ellipse x:Name="circle" HorizontalAlignment="Center" Height="19" Stroke="DarkGray" VerticalAlignment="Center" Width="19"/>
- <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"/>
- <ContentPresenter Grid.Column="1" HorizontalAlignment="Left" Margin="4,0,0,0" RecognizesAccessKey="True" SnapsToDevicePixels="True" VerticalAlignment="Center"/>
- </Grid>
- </Border>
- <ControlTemplate.Triggers>
- <Trigger Property="IsChecked" Value="true">
- <Setter Property="Data" TargetName="arrow" Value="M 1,4.5 L 4.5,1 L 8,4.5"/>
- </Trigger>
- <Trigger Property="IsMouseOver" Value="true">
- <Setter Property="Stroke" TargetName="circle" Value="#FF3C7FB1"/>
- <Setter Property="Stroke" TargetName="arrow" Value="#222"/>
- </Trigger>
- <Trigger Property="IsPressed" Value="true">
- <Setter Property="Stroke" TargetName="circle" Value="#FF526C7B"/>
- <Setter Property="StrokeThickness" TargetName="circle" Value="1.5"/>
- <Setter Property="Stroke" TargetName="arrow" Value="#FF003366"/>
- </Trigger>
- </ControlTemplate.Triggers>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
- </Style.Resources>
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="{x:Type Expander}">
- <Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="3" SnapsToDevicePixels="true">
- <DockPanel>
- <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}"/>
- <ContentPresenter x:Name="ExpandSite" DockPanel.Dock="Bottom" Focusable="false" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
- <ContentPresenter.LayoutTransform>
- <ScaleTransform ScaleX="1" ScaleY="0"/>
- </ContentPresenter.LayoutTransform>
- </ContentPresenter>
- </DockPanel>
- </Border>
- <ControlTemplate.Triggers>
- <EventTrigger RoutedEvent="Expander.Expanded">
- <BeginStoryboard>
- <Storyboard Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="LayoutTransform.ScaleY">
- <DoubleAnimation To="1" Duration="0:0:0.2"/>
- </Storyboard>
- </BeginStoryboard>
- </EventTrigger>
- <EventTrigger RoutedEvent="Expander.Collapsed">
- <BeginStoryboard>
- <Storyboard Storyboard.TargetName="ExpandSite" Storyboard.TargetProperty="LayoutTransform.ScaleY">
- <DoubleAnimation To="0" Duration="0:0:0.2"/>
- </Storyboard>
- </BeginStoryboard>
- </EventTrigger>
- </ControlTemplate.Triggers>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
- </Window.Resources>
- <Grid x:Name="LayoutRoot">
- <Expander>
- <Expander.Content>
- <StackPanel>
- <TextBlock Text="Hello World !"/>
- <TextBox/>
- </StackPanel>
- </Expander.Content>
- </Expander>
- </Grid>
- </Window>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement