WPF Windows应用程序 - 搜索

时间:2011-10-07 04:07:08

标签: wpf search

紧急帮助 - 我必须在WPF窗口应用程序中实现搜索功能。在这个应用程序中,我有一个TreeView控件,当用户点击任何TreeViewnode时,相应的Wpf用户控件将出现在右侧的数据中。

我想实现搜索。用户可以在“搜索”文本框中输入任何内容,并且该搜索词应该在右侧WPF用户控件中突出显示。

我该如何实现?

是否有办法显示搜索的术语而无需点击数据库。

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

1)要搜索WPF视图中的任何文本项,您将进入逻辑和可视树以获取子项。

2)识别每个孩子的文本属性,例如.Text,.Content,.Header。

如果找到携带文字信息的项目,则使用

    if (<value> is string && ((string)<value>).Contains(searchString))
    { 

       /// Implement step 3 and 4 below.
    } 

3)如果打算逐个搜索,请使用child.Focus()和child.BringIntoView()调用。否则跳到第4步。

4)使用装饰品突出显示此类项目。

遗憾的是,必须使用Dispatcher.BeginInvoke()进行此搜索,并且如果存在大量可视项目,则可能会挂起视图。