我正在开发一个应用程序(A database file system)。我在其GUI中使用WPF树视图。树视图项目直接从我的应用程序数据库中提取。如何突出显示WPF treeview中的搜索结果?
我想在输入时搜索并突出显示树视图项目。 要更好地理解问题,请考虑浏览器中显示的关键字搜索结果。
alt text http://img100.imageshack.us/img100/4168/chromel.jpg
如何实现,在我的背景?
我正在开发一个应用程序(A database file system)。我在其GUI中使用WPF树视图。树视图项目直接从我的应用程序数据库中提取。如何突出显示WPF treeview中的搜索结果?
我想在输入时搜索并突出显示树视图项目。 要更好地理解问题,请考虑浏览器中显示的关键字搜索结果。
alt text http://img100.imageshack.us/img100/4168/chromel.jpg
如何实现,在我的背景?
使用视图模型,所有的包裹出现在您的树状视图的项目。给他们一个IsHighlighted财产。在视图模型项上执行搜索,如果它们符合条件,则将IsHighlighted属性设置为true。使用绑定到IsHighlighted属性的treeviewitem样式的触发器更新背景的颜色。
树形视图一次只能有一个选定的项目(它不支持像列表视图一样的多选)所以如果你想有多个搜索结果,那么设置树形视图的SelectedItem就足够了。使用具有诸如IsExpanded等属性的视图模型也可以让你做一些时髦的东西。例如如果某个节点是“找到”的,则可以展开其上的所有其他节点以使其可见。