2013-02-19 60 views
0

我正在設計一個代碼查看器使用虛擬化ListView控件來顯示代碼行。ListView項目突出

現在我想創建一個突出的效果,當用戶點擊一個鏈接,將他們帶到一個特定的行。我想要突出顯示目標線。

效果將是出現(和消失)的「下劃線」或出現(和消失)的半透明疊加(如標記筆)。實際的圖形效果本身並不重要,這不是問題。

實現此目標的最佳方法是什麼?我不確定從哪裏開始。

一些技術要求可能是我需要:

  • 找到合適的事件作出反應 - 或使用數據綁定
  • 獲得虛擬化的目標項目的絕對邊框(儘管拿來當進入視野的項目應提供)
  • 絕對定位在頂部帆布效果,淡入和淡出

...理想情況下,視圖模型中的某些狀態更改,一段XAML通過觸發的故事板動畫顯示(淡入)到相關ListViewItem上方,然後再次動畫(淡出)。當然,在淡入之前,該元素必須已經被正確地定位在相關的ListViewItem上...

回答

1

我已經在ListView的搜索功能上工作,其中每個ListViewItem都有幾個文本塊。當用戶在搜索文本框中鍵入內容時,listview中的所有匹配都應該突出顯示。

我創建基於搜索字符串運行對象(用正則表達式找到匹配),然後將背景設置爲某種顏色。此外,在幫助我使用調用ScrollIntoView的Run對象的標記中持有ListViewItem的引用。希望這會對你的情況有所幫助。