Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This example shows how to create a horizontal ListBox by defining a style. The ListBoxItem controls are listed horizontally and separated by user defined separators. The style uses the Orientation enumerated type and a ScrollViewer with the HorizontalScrollBarVisibility property set. The following example shows the styles for the Separator and the ListBox.
Example
<Grid.Resources>
<Style x:Key="Separator" TargetType="{x:Type StackPanel}">
<Setter Property = "Margin" Value= "4"/>
<Setter Property = "Width" Value= "2"/>
<Setter Property = "Height" Value= "12"/>
<Setter Property = "Background" Value= "Gray"/>
</Style>
<Style x:Key="ListBoxTemplate" TargetType="{x:Type ListBox}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListBox}">
<Border Background="{TemplateBinding Panel.Background}"
BorderBrush="{TemplateBinding Border.BorderBrush}"
BorderThickness="{TemplateBinding Border.BorderThickness}">
<ScrollViewer HorizontalScrollBarVisibility="Auto">
<StackPanel x:Name="StackPanel1" IsItemsHost="True"
Orientation="Horizontal"/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Grid.Resources>
For the complete sample see Horizontal ListBox Sample.
See Also
Tasks
How to: Create a ListBox with an Event Handler