WinRT自定义虚拟化面板

时间:2014-11-20 13:34:07

标签: c# windows-8 windows-runtime windows-phone-8.1 win-universal-app

作为WinRT中每个标准虚拟化面板的错误和限制列表越来越长,对我来说越来越烦人,我需要编写自己的虚拟化面板,以满足我的所有需求。

我现在面临的问题是,我在互联网上找到的WinRT面板上只有少数(几乎没有答案)的问题。我找到的唯一解决方案都是针对WPF并依赖于WinRT中没有的IScrollInfo接口。

我还想过从(Oriented)VirtualizingPanel派生,但它们都是密封的或者有内部构造函数。

所以我的问题是:有谁知道在哪里可以找到关于如何在WinRT中为ListView / GridView实现自定义虚拟化面板的好教程。或者我注定要从头开始编写完整的整个ItemsControl实现滚动处理和虚拟化?我的意思是它完全可能,但要做很多工作。我无法相信MS Devs认为我们无法编写高性能的虚拟化面板,因此无法将其全部锁定。

1 个答案:

答案 0 :(得分:0)

我也在寻找完整的答案。 IMO虚拟化平台并非“糟糕”,但它并不支持所有类型的虚拟化。例如。通过视频帧滚动supa'fast。

Windows Phone Toolkit的原语“LoopingSelector”有一个如何将“Canvas”编写为虚拟化项目面板的示例。唉,这是Silverlight而不是WinRT,但它应该是关闭的 - 它应该只是重写它以使用Pointer而不是鼠标事件。

另外,我正在考虑“随机访问虚拟化”以获得可能的想法。 http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh780657.aspx