Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Windows Phone 8.1(WinRT):自定义循环选择器_C#_Xaml_Windows Runtime_Windows Phone 8.1_Loopingselector - Fatal编程技术网

C# Windows Phone 8.1(WinRT):自定义循环选择器

C# Windows Phone 8.1(WinRT):自定义循环选择器,c#,xaml,windows-runtime,windows-phone-8.1,loopingselector,C#,Xaml,Windows Runtime,Windows Phone 8.1,Loopingselector,我想为我的Windows Phone 8.1(WinRT)定制一个循环选择器,但目前找不到任何解决方案。我想要这样的东西: 适用于WP8.0和WP8.1 Silverlight,但不适用于WP8.1(WinRT)应用程序(适用于WP8.1 Silverlight) WP8.1有一些控件。有没有办法自定义他们的数据或其他东西来欺骗控件以解决我的问题 有一个类,但它似乎还没有实现 任何解决方案或想法都将不胜感激。我为“无限捕捉日期选择器”做了类似的事情,如果这有意义的话:) 基本知识: 创建要显

我想为我的Windows Phone 8.1(WinRT)定制一个循环选择器,但目前找不到任何解决方案。我想要这样的东西:

适用于WP8.0和WP8.1 Silverlight,但不适用于WP8.1(WinRT)应用程序(适用于WP8.1 Silverlight)

WP8.1有一些控件。有没有办法自定义他们的数据或其他东西来欺骗控件以解决我的问题

有一个类,但它似乎还没有实现


任何解决方案或想法都将不胜感激。

我为“无限捕捉日期选择器”做了类似的事情,如果这有意义的话:)

基本知识:

  • 创建要显示的数据模型,该模型可以为您提供下一个/上一个元素
  • 使用
    Canvas
    作为控件根目录(速度很快)
  • 调用render
    Loaded
    并在
    SizeChanged
  • 为选定值创建(依赖项)属性
  • 订阅相关的操作事件(
    操作增量
    ,以及
    *已完成
    )并选择所需内容
    操作模式
    您想要允许(翻译,如果您想要intertia,可能是translateintertia)
呈现:

  • 渲染屏幕大小/elementsize+2个元素(可能更多)
  • 在操纵增量和已完成事件上移动它们
  • 如果某个元素离开控件边界的一侧,则将该一侧的最后一个元素移动到另一端,同时也更改显示的数据(基本上如果它是最后一个元素,而不是firstelement.getprevious)
  • 在操纵完成时,找到离中心最近的元素,并将所有元素设置为“捕捉”位置
  • 最后,将selectedvalue属性设置为居中元素的数据

此解决方案具有动画画布。左侧即使在第一代曲面RT上也表现良好。祝您好运

不确定您是否还需要这个。。。但是这里有一个WinRT LoopItemsPanel项目:

选择器类是否已密封?如果没有,则从它们继承一个新类并重写这些方法,以便它们执行您想要的操作。如何找到它们是否已密封?这是类:。它是“公共类时间选择器:控件”。那么我能继承它吗?@magicandre1981,如果你有时间从你所说的话中创建一个工作示例(并回答这个问题),那么它对每个人都很有用。提前谢谢。我刚开始看一些关于手机开发的视频。所以我不是你应该问的关于这样一个例子的人。谢谢你的回答。但是你能给我提供一些代码或链接到工作示例吗?提前谢谢。很抱歉,这是一个工作项目,所以我无法真正共享代码:(谢谢,但我不想要复制/粘贴代码。请您创建一个示例项目好吗?它可以供大家使用。