ListBox WPF-VirtualizingStackPanel с двумя строками, например, wrappanel

Мой списокБокс:

<ListBox VirtualizingStackPanel.IsVirtualizing="True" VirtualizingStackPanel.VirtualizationMode="Recycling" Name="lst" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Visible" Margin="0,0,0,-23">
...
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
          <WrapPanel/>
    </ItemsPanelTemplate>
</ListBox.ItemsPanel>

Мне нужен такой же, но с VirtualizingStackPanel. Если я заменю WrapPanel на VirtualizingStackPanel, элементы будут отображаться только в строке, тогда как раньше у меня было много строк. Мне нужна помощь.


person user2618311    schedule 21.10.2013    source источник


Ответы (1)


Вам нужно установить ItemsPanelTemplate на VirtualStackPanel, а Orientation на Vertical.

<ListBox.ItemsPanel>
    <ItemsPanelTemplate>
        <VirtualizingStackPanel Orientation="Vertical" 
                                IsVirtualizing="True" VirtualizationMode="Recycling" />
    </ItemsPanelTemplate>
</ListBox.ItemsPanel>
person Jason Tyler    schedule 21.10.2013