xaml - 具有不同模板的 LongListSelector 项

标签 xaml user-interface windows-phone-8 windows-phone

我在 Windows Phone 应用程序中有一个 LongListSelector。
每个项目都有一个图片和一个文字。
我想为它们交替使用两个不同的 ItemTemplates。
第一个是右边的图片和左边的文字,第二个是左边的图片和右边的文字,依此类推。

我尝试使用加载的事件为每个项目设置模板,但是对于大量数据(超过 10-15 个)项目,它们的加载顺序与它们在列表中显示的顺序不同。
我该怎么做?

最佳答案

您正在寻找的东西被称为 DataTemplate 选择器。最好的起点(因为您没有分享您尝试过的任何内容)是在线搜索该术语,或查看以下资源之一:

  • Dynamic Item Templates for LongListSelector
  • LongListSelector and DataTemplateSelector
  • Implementing Windows Phone 7 DataTemplateSelector and CustomDataTemplateSelector
  • 等等...

  • DataTemplate 选择器的主要思想非常简单——根据一定的标准选择要应用的 DataTemplate。在您的情况下,它基于列表中项目的索引,在其他情况下,它可能是用于绑定(bind)的数据类型(如果项目是“汽车”类型,您希望显示更多详细信息,如果项目是类型为“滑板”,因为滑板(通常)没有汽车复杂并且具有较少的属性和细节)等。

    关于xaml - 具有不同模板的 LongListSelector 项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21819001/

    相关文章:

    wpf - 如何使用 XAML 在 WPF 中按首字母对 ListBoxItems 进行分组?

    c# - 视觉状态和自定义依赖属性 (MVVM)

    wpf - 转到 XAML 中的定义

    python - 如何更新 Tkinter 窗口的屏幕( Canvas )

    iOS - 界面设计、图像或自定义绘图?

    cordova - 将 Meteor JS 应用程序编译到 Windows Phone

    c# - 有什么方法可以校准 Windows Phone 设备中的陀螺仪/罗盘/加速度计吗?

    xaml - 网格不占用 100% 宽度

    python - 如何通过 Python 脚本列出 Mac 上所有打开的窗口?

    javascript - Windows Phone 8 IE10 Javascript 调试