ValueConveter or DataTemplate

本文关键字:DataTemplate or ValueConveter | 更新日期: 2023-09-27 18:31:00

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

ValueConveter or DataTemplate

为什么不只使用 ListView 和 GridView?您的用例正是他们存在的原因。

MSDN 有一个很好的小示例,用于说明如何在运行时在 ListView 中切换视图。