大量のデータ (200 以上の項目) を持つ ListView があるため、スペースを節約するために、UniformGrid を使用して 1 列ではなく 3 列を表示しています。
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="3" />
</ItemsPanelTemplate>
</ListView.ItemsPanel>
また、各アイテムが上に配置されるようにスタイルを変更します
<ListView.Resources>
<Style TargetType="{x:Type ListView}">
<Setter Property="ItemContainerStyle">
<Setter.Value>
<Style TargetType="ListViewItem">
<Setter Property="VerticalContentAlignment" Value="Top"/>
</Style>
</Setter.Value>
</Setter>
</Style>
</ListView.Resources>
これは問題なく動作しますが、表示されるデータの長さの違いにより、ほとんどのデータが 1 行に収まるため、項目グループにはまだ無駄なスペースがありますが、2 行以上を占める項目がある場合もあります。これは、余分なスペースが必要な行が 1 行だけの場合でも、グループ内のすべての行が 2 行以上を占有することを意味します。
これを修正する方法を知っている人はいますか、または均一グリッドを回避する別のアプローチを提案できますか? ありがとう!