代码之家  ›  专栏  ›  技术社区  ›  Raffy Alcoriza

在一个列表视图中组合多个对象

  •  0
  • Raffy Alcoriza  · 技术社区  · 10 年前

    我正在开发一个基于XAML的Windows Phone 8.1项目。我的 MainPage 有一个Pivot控件,它的第一项被设计成某种“仪表板”,将事件和待办事项等多种数据组合在一起。

    为此,我有一个 Event 和一个 To-do 模型类(不是实际名称,但您可以理解),因为我正在使用MVVMLight运行该节目。

    我目前已设置 ListView 在MainPage.xaml中的一个透视项中。我想知道如何使它工作,以便所有具有对象的项 事件 待办事项 位于一个单独的枢轴项目。

    我四处寻找,找到了CompositeCollection,但它只在WPF上,还没有在WinRT上。我试着处理 Midgard.CompositeCollection 但数据没有显示出来,我不明白如何以不同的方式设置这些独立类型的数据。

    是否有任何技术可以将两个数据集组合在一组列表上,但将单独设置样式?是 列表视图 处理多种数据的正确控制,还是其他什么?

    我对这个领域还很陌生;抱歉,如果这是一个我还不能完全理解的基本概念。

    非常感谢。

    1 回复  |  直到 10 年前
        1
  •  0
  •   Igor Kulman    10 年前

    有一种方法,而且很简单。两者兼得 Event To-do 从同一基类继承(可以为空)并创建 ObservableCollection 此基本类型(也可以是 object 如果不想创建单独的类)。添加两者 事件 待办事项 对此表示反对 可观测集合 .

    绑定 ListView 到此为止 可观测集合 。现在是棘手的部分。您需要创建 DataTemplateSelector 。有关比赛指南,请参见 http://blog.kulman.sk/using-different-data-templates-with-gridview-in-windows-8-apps/ (本文章适用于 GridView 但它对 列表视图 ).