<Page x:Class="ExpanderDirectionExample.Page1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="200"/> <ColumnDefinition Width="150"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition/> </Grid.RowDefinitions> <StackPanel Grid.Column="0" Grid.Row="0"> <Expander Name="myExpander" Background="Tan" HorizontalAlignment="Left" Header="My Expander" ExpandDirection="Down" IsExpanded="True" Width="100"> <TextBlock TextWrapping="Wrap"> this is a test </TextBlock> </Expander> </StackPanel> <StackPanel Grid.Column="1" Grid.Row="0"> <TextBlock Margin="0, 10, 3, 3" FontSize="12" TextWrapping="Wrap"> Click to change the ExpandDirection property on My Expander </TextBlock> <StackPanel> <RadioButton Name="ExpandDown" Margin="0,10,0,10" IsChecked="True" Checked="ChangeExpandDirection" GroupName="ExpandDirectionProperty"> Expand Down </RadioButton> <RadioButton Name="ExpandUp" Margin="0,0,0,10" Checked="ChangeExpandDirection" GroupName="ExpandDirectionProperty"> Expand Up </RadioButton> <RadioButton Name="ExpandLeft" Margin="0,0,0,10" Checked="ChangeExpandDirection" GroupName="ExpandDirectionProperty"> Expand Left </RadioButton> <RadioButton Name="ExpandRight" Margin="0,0,0,10" Checked="ChangeExpandDirection" GroupName="ExpandDirectionProperty"> Expand Right </RadioButton> </StackPanel> </StackPanel> </Grid> </Page> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Media; using System.Windows.Navigation; using System.Windows.Shapes; namespace ExpanderDirectionExample { public partial class Page1 : Page { private void ChangeExpandDirection(object sender, RoutedEventArgs e) { if ((Boolean)ExpandDown.IsChecked) myExpander.ExpandDirection = ExpandDirection.Down; else if ((Boolean)ExpandUp.IsChecked) myExpander.ExpandDirection = ExpandDirection.Up; else if ((Boolean)ExpandLeft.IsChecked) myExpander.ExpandDirection = ExpandDirection.Left; else if ((Boolean)ExpandRight.IsChecked) myExpander.ExpandDirection = ExpandDirection.Right; myExpander.IsExpanded = true; } } }