是否可以设置GridView
列的数量?
例如,我有一个GridView
,该行应始终有3列。
我该如何实现?
答案 0 :(得分:2)
您可以通过 Windows社区工具包的 UniformGrid 控件轻松实现这一目标。 docs :https://docs.microsoft.com/en-us/windows/communitytoolkit/controls/uniformgrid
在此控件中,您可以控制行数和列数,或同时控制行数和列数,只需将nuget包用于 Windows社区工具包控件,然后使用它即可。祝好运。另外,如果要与数据绑定一起使用,则可以创建一个自定义用户控件,在其中可以定义DataTemplate,然后在运行时可以添加新的CustomUserControl();。并继续将它们添加到您的统一网格中,这可以解决您的数据绑定问题。
在新的 winui 库中,您还拥有另一个名为 Repeater 的新控件:https://reflectionit.nl/blog/2018/xaml-repeater-control
我们在布局上也非常灵活,可以为您提供帮助。
答案 1 :(得分:2)
是否可以设置GridView列的数量?
当然,您可以将VariableSizedWrapGrid
用作ItemsPanel
中的GridView
。它具有MaximumRowsOrColumns
属性,用于修复GridView的列或行。例如:
<GridView>
<GridView.ItemTemplate>
<DataTemplate>
<Rectangle Height="200" Width="200" Fill="AliceBlue"/>
</DataTemplate>
</GridView.ItemTemplate>
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<VariableSizedWrapGrid
Orientation="Horizontal"
VerticalAlignment="Top"
ScrollViewer.HorizontalScrollMode="Enabled"
ScrollViewer.VerticalScrollMode="Disabled"
MaximumRowsOrColumns="3">
</VariableSizedWrapGrid>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
</GridView>