1

我正在开发一个包含配置文件视图的 Windows 8 商店应用程序。在配置文件视图中,我有一个 ListView,它绑定到 ViewModel 中的 Observable 对象集合。我在视图模型中还有一个名为 currentObject 的属性。

我需要做的是为集合中与 currentObject 具有相同 ID 的对象选择不同的项目模板。在视图模型中执行此操作的方法很简单,但是,我不确定如何触发该方法并将项目模板名称返回到视图模型中的列表视图模板选择器属性。

我正在使用 c#、MVVM 和 caliburn.micro,所以我更愿意将此代码保留在后面的代码之外。

有什么建议么?

4

1 回答 1

0

有一种比使用 DataTemplateSelector 更简单的方法,如上面评论中的答案所示,如果您在 XAML 中使用 DataTemplates,您可以使用 DataType 属性,您可以使用它来将 DataTemplate 关联到一个类型(它应该是一个视图模型)。因此,当渲染引擎遇到该类型时,它知道要选择哪个数据模板。

 <DataTemplate DataType="{x:Type vm:MyViewModel}">
 </DataTemplate>
于 2014-02-25T09:15:28.130 回答