我有一个Listbox,我将字符串列表绑定到它。默认情况下,“列表”框中的项目垂直滚动。但我想要这些项目水平滚动。这是我拥有的那片xaml。
<ListBox Grid.Row="1" FontSize="25" Name="lstitems" Height="400"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Disabled">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="Padding" Value="0,15,0,0"/>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Name="tbl" Text="{Binding}">
<LineBreak></LineBreak>
</TextBlock>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我尝试了各种方法,但它不会水平滚动。使用此代码,我可以将项目移动到左侧,但其余项目未加载。 item source属性是从cs文件设置的。
答案 0 :(得分:2)
您可能会尝试使用垂直方向的WrapPanel。
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
另外,不要忘记将ScrollViewer.HorizontalScrollBarVisibility
设置为Auto