目標:在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...