ItemsControl に表示したい項目のコレクションがあります。これらの各アイテムには、各アイテム内に水平に表示されるサブアイテムのコレクションがあります。私の質問は、XAML でサブ項目を並べ替えるにはどうすればよいですか? 通常は CollectionViewSource を使用しますが、この場合は機能しません。以下に簡単な例を示します。この場合、somedata はアイテム (文字列) のコレクションであり、アイテムは文字のコレクションです。各行にすべての文字がソートされるように、この例を変更したいと思います。
これはウィンドウのコンストラクターです。
string[] somedata = new string[] { "afkhsdfgjh", "fsdkgjhsdfjh", "sdfjhdfsjh" };
mainList.ItemsSource = somedata;
そして、これは XAML として (ウィンドウ タグ内)
<ItemsControl Name="mainList">
<ItemsControl.ItemTemplate>
<DataTemplate>
<ItemsControl ItemsSource="{Binding}" >
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"></StackPanel>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemContainerStyle>
<Style TargetType="ContentPresenter">
<Setter Property="Margin" Value="0,0,5,0"></Setter>
</Style>
</ItemsControl.ItemContainerStyle>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>