2012-04-14 45 views
0

我想构建一个通用接口,它可以接受一个对象列表,然后根据用户选择他们想要查看对象的方式来选择不同的方式来显示对象。目前,用户有一个下拉菜单,允许他们选择视图类型,例如“详细信息,预览等”,就像浏览器一样,然后根据显示器的选择进行更改。我的第一次尝试是创建UserControls,它将接受绑定的对象并显示它,但是我不知道如何将我的listitems转换为用户控件。我的问题是,是否应该使用IValueConverter将listitem转换为我想要显示的用户控件的类型,还是应该使用DataTemplates和TemplateSelector来定义我的不同视图?ValueConveter或DataTemplate

回答

1

为什么不直接使用ListView和GridView?你的用例正是他们为什么在那里的原因。

MSDN有一个很好的示例,用于如何在运行时切换ListView中的视图,权限为here

+0

我会读一读。我的想法是,将来我希望在应用程序的其他部分使用这些相同的视图,这就是为什么我试图从项目中进行控制的原因。 – brack 2012-04-14 05:05:28

+0

这并不难。创建一堆样式并将它们粘贴到styles.xaml文件中,并将它们全部用于应用程序。这个原则不仅适用于ListView和GridView,还适用于整个应用程序:) – 2012-04-14 05:12:08