Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WPF Listbox Wrapping

I have a listbox in which I use a ListBox.ItemsPanel - WrapPanel.

<ListBox ItemsSource="{Binding Path=Applets}" Margin="10,92,10,10" ScrollViewer.HorizontalScrollBarVisibility="Disabled" >

        <ListBox.ItemsPanel>
            <ItemsPanelTemplate>

                <WrapPanel Orientation="Vertical" IsItemsHost="True">

                </WrapPanel>
            </ItemsPanelTemplate>
        </ListBox.ItemsPanel>



        <ListBox.ItemTemplate>...

I am trying to have the wrappanel have a behavior such that the items fill in to the right as the width is made wider and wrap as needed when the window is made narrower. I have played with it but the correct combination eludes me. Does anyone have a suggestion?

My next goal would be able to reorder/ sort the items and have the render update.

TIA

like image 480
Jeff Avatar asked Nov 09 '10 22:11

Jeff


1 Answers

I am trying to have the wrappanel have a behavior such that the items fill in to the right as the width is made wider and wrap as needed when the window is made narrower. I have played with it but the correct combination eludes me. Does anyone have a suggestion?

The code you have is almost correct, just change the Orientation to Horizontal and it should work as you describe

My next goal would be able to reorder/ sort the items and have the render update.

You don't have to do anything special for that, it's the normal behavior of a ListBox. Just change the sort order (using ICollectionView.SortDescriptions), and the UI will reflect the changes

like image 122
Thomas Levesque Avatar answered Sep 17 '22 21:09

Thomas Levesque