我是一名经验丰富的编码员,正在努力学习C#和WPF。现在,我对细节有点敏感,我想确保我的应用程序与其他用户界面融为一体。但是,我似乎无法使用ListView完成此操作。我的设置很简单 - 在我的窗口中添加ListView
,绑定到我选择的ObservableCollection
,然后运行该应用程序。
结果是弹出的项目很好(没有有意义的内容)。但是,ListView上的选择矩形始终是深蓝色,使我回到XP之前的日子,而不是使用默认Windows 7视觉样式的更整洁的主题选择。要查看该类型的选择,只需在资源管理器中选择一个文件,或者在控制面板的“程序和功能”中查看另一个示例。看起来很漂亮。
如何让WPF根据我的用户设置正确设置ListView的主题?我不想重新发明整个选择代码并添加大量的样式和doodahs - 我想要一个看起来不错的普通Windows应用程序。按钮工作正常,文本框工作正常,组合框看起来很好,等等。这只是看起来完全废话的ListView。
编辑:如果需要,我可以使用另一个(非常,非常优选不是第三方)控件,但是我确实需要一个看起来像本机的项目列表,并且我接近类似于资源管理器中的每个选定项目的图块选项(图标,描述,额外的信息行)。垂直滚动只是我需要的。
答案 0 :(得分:4)
如果您使用ListView并将ListView.View设置为GridView,那么您将获得与Windows 7资源管理器非常相似的外观。 (至少在我看来,或者这是你正在谈论的外观?)。它也遵循活跃的主题
示例1.右侧带有GridView的ListView。选择有效
示例2.右侧带有GridView的ListView。选择无效
示例3.使用高对比度主题#2