czy istnieje składnik interfejsu użytkownika do rozmieszczania elementów jako siatki z WPF [duplikat]

Dec 21 2020

Utworzyłem model widoku z właściwością ObservableCollection (z ciągów). Chcę utworzyć widok (XAML), który organizuje elementy kolekcji jako siatkę.

na przykład, jeśli moja kolekcja zawiera Kim, Ron, Peter, Nick, Tom, Dan, Bella, Rose ...

Zaaranżuje się tak:

Kim Ron Peter

Nick Tom Dan

Bella Rose ...

Czy istnieje składnik interfejsu użytkownika, który może używać mojej kolekcji jako źródła itemsSource i organizuje go zgodnie z potrzebami?

Odpowiedzi

TamBui Dec 21 2020 at 17:32

Tak, możesz użyć dowolnego elementu UIElement, który pochodzi z ItemsControl, na przykład ListBox, i zmienić go ItemsPanelna a UniformGrido Columnsrozmiarze 3.

Na przykład:

<ListBox ItemsSource="{Binding Names}">
    <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <UniformGrid Columns="3"/>
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>
</ListBox>