如何制作无限循环的 GridView(启用一行)

How to make a infinite cycling GridView(one row enabled)

我正在使用 AdaptiveGridViewOneRowEnabled 从 windows 社区工具包导入,发现 NetFlix 应用程序有一个有趣的东西。所有类别项都是无限循环的,即当滚动到最后一项时,然后第一项出现在最后一项之后。就像一个圈子列表,最后一个与第一个相连。

我觉得图片可能更直观

绿色区域是用户可见的。当我向右滚动时,项目向左移动。例如,当滚动最后一项 item 100 时,item 1 会跟随出现在用户可视区域中。似乎项目 100 和 item 1 总是无缝连接的。这太棒了。

那么怎么做呢,谢谢。

你真正需要的是一个循环列表控件。 UWP 的 telerik UI 有一个 ready-made 控件 'LoopingList' 控件。它现在是开源的。您可以查看其源代码:https://github.com/telerik/UI-For-UWP/tree/master/Controls/Primitives/Primitives.UWP/LoopingList

您可以直接在您的代码中使用它。

xmlns:telerikLoopingList="using:Telerik.UI.Xaml.Controls.Primitives.LoopingList"

<telerikLoopingList:RadLoopingList x:Name="loopingList"/>
loopingList.ItemsSource = Enumerable.Range(0,100).ToList();