我有一个 WPF 应用程序,它有一个 ViewBox 来显示我的集合中的项目,为我的结果显示一个 2 列网格。
我想做的是,根据我收藏的项目数量,更改列数。例如,如果列表中有 < 10 个项目,则仅在 1 列中显示它们;如果我的列表中有 10 个项目,则将它们显示在 2 列中;如果我的列表中有 20 项,则显示 3 列。
这是我目前拥有的:
<Viewbox>
<ItemsControl ItemsSource="{Binding myCollection}" Style="{DynamicResource myStyle}" />
</Viewbox>
这是 myStyle 当前定义的内容:
<Style x:Key="myStyle" TargetType="{x:Type ItemsControl}">
<Setter Property=ItemsControl.ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<UniformGrid Columns="2" />
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</Style>
如何使此代码符合上述要求?谢谢。