我正在使用 ItemsControl 中的 ItemsPanel 中的 WrapPanel。只要添加的物品适合尺寸,这就会完美。为了满足内容超出大小的情况,我添加了一个ScrollViewer。但是现在这些项目仅垂直列出,即使它们都适合。任何想法是否可能以及我必须做什么。
这是我的xml:
<ItemsControl Name="LicSwUserItemsCtl" Grid.Column="1" Grid.Row="2">
<ItemsControl.Template>
<ControlTemplate>
<ScrollViewer Name="Scroller" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">
<ItemsPresenter />
</ScrollViewer>
</ControlTemplate>
</ItemsControl.Template>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel Orientation="Vertical" HorizontalAlignment="Stretch" Margin="0" Name="wrpPanel" VerticalAlignment="Stretch" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Border x:Name="BrdrStkPnlSwLicUser" CornerRadius="2" BorderThickness="1" Width="120" Height="20" Margin="0,0,3,0" BorderBrush="Transparent">
<StackPanel Name="StkPnlSwLicUser" Orientation="Horizontal" Height="18" Width="120" Margin="0" MouseEnter="StackPanel_MouseEnter" MouseLeave="StackPanel_MouseLeave" MouseLeftButtonUp="StackPanel_MouseLeftButtonUp" >
<Image Source="{Binding Converter={StaticResource IconImage}}" Margin="2,0,3,0" Height="16" Width="16" />
<TextBlock Name="txtBlk" Text="{Binding NodeText}" />
</StackPanel>
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>