XAML

2016-07-19 13 views
0
でListViewコントロールまたはのItemsControl内のすべてのn個の要素を整列させる方法

は私がモデルXAML

public class Person 
{ 
    public string Name { get; set; } 
} 

持っていると私ViewModleに私はこのリストを持っているとしましょうこの:

<ItemsControl ItemsSource="{Binding People}"> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
      <StackPanel> 
       <TextBlock Text="{Binding Name}"/> 
      </StackPanel> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate> 
</ItemsControl> 

何私がachiveしたいことは、行ごとに3人を持つことです。 それでは言わせて人々= {A、B、C、D、E、F、G}私は好きなことを表示したい :
ABC
DEF
Gを
を達成するための適切な方法は何である

この ?

答えて

5

あなたはこのようItemsPanelとしてUniformGridを使用することができます。

<ItemsControl ItemsSource="{Binding People}"> 
    <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <UniformGrid Columns="3"/> 
     </ItemsPanelTemplate> 
    </ItemsControl.ItemsPanel> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
      <StackPanel> 
       <TextBlock Text="{Binding Name}"/> 
      </StackPanel> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate> 
</ItemsControl>