WPF搜尋關鍵字高亮顯示

2021-06-28 05:43:27 字數 951 閱讀 6958

目標:在wpf中,對lucene.net進行全文檢索後的結果中包含的關鍵字進行高亮顯示。

檢索結果中的關鍵字高亮顯示,在網頁中顯示是很簡單的,lucene中加標籤樣式就可以了,可是在wpf中就不行了。

我在wpf中用gridcontrol顯示搜尋結果列表,gridcontrol的模板裡用textblock顯示文字。

寫了2個方法來使textblock中的文字高亮。

1、查詢gridcontrol中的所有textblock

public static ienumerablefindvisualchildren(dependencyobject depobj) where t : dependencyobject

foreach (t childofchild in findvisualchildren(child))}}

}

2、遍歷每個textblock,並高亮顯示其包含的關鍵字。如果有多個關鍵字,各關鍵字以空格分隔。

void highlighterkeywords(string keywords, dependencyobject depobj) 

, stringsplitoptions.removeemptyentries);

stringbuilder pattern = new stringbuilder();

foreach (string item in arr)

regex regex = new regex(pattern.tostring().trimend('|'), regexoptions.ignorecase);

system.threading.thread.sleep(10);

this.dispatcher.begininvoke(new action(() =>

else}}

}));

}

搜尋功能,關鍵字高亮顯示

如下,直接呼叫即可 搜尋關鍵字高亮 param view param value param keys 由key.spilt 分割獲得 param context public static void setuptextview textview view,final string value,st...

高亮顯示關鍵字例項 替換搜尋關鍵字例項

票房第一的審死官,主演 周星馳,梅艷芳票房第二的家有喜事,主演 周星馳,張國榮票房第三的鹿鼎記,主演 周星馳,林青霞票房第四的武狀元蘇乞兒,主演 周星馳,張敏票房第五的鹿鼎記2,主演 周星馳,林青霞 在這一年,香港電影票房前五的作品都由周星馳主演。而在之後周星馳的導演歲月裡,票房也是一度創造了神話。...

如何高亮顯示關鍵字

以前寫全文檢索程式的時候寫的.原創 by 飛鳥 dev club.com email flybird dev club.com ie5.5 指令碼引擎 required dim patern dim found dim str dim result patern a b str a dog fall...