2013-02-19 120 views
0

我正在设计一个代码查看器使用虚拟化ListView控件来显示代码行。ListView项目突出

现在我想创建一个突出的效果,当用户点击一个链接,将他们带到一个特定的行。我想要突出显示目标线。

效果将是出现(和消失)的“下划线”或出现(和消失)的半透明叠加(如标记笔)。实际的图形效果本身并不重要,这不是问题。

实现此目标的最佳方法是什么?我不确定从哪里开始。

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

  • 找到合适的事件作出反应 - 或使用数据绑定
  • 获得虚拟化的目标项目的绝对边框(尽管拿来当进入视野的项目应提供)
  • 绝对定位在顶部帆布效果,淡入和淡出

...理想情况下,视图模型中的某些状态更改,一段XAML通过触发的故事板动画显示(淡入)到相关ListViewItem上方,然后再次动画(淡出)。当然,在淡入之前,该元素必须已经被正确地定位在相关的ListViewItem上...

回答

1

我已经在ListView的搜索功能上工作,其中每个ListViewItem都有几个文本块。当用户在搜索文本框中键入内容时,listview中的所有匹配都应该突出显示。

我创建基于搜索字符串运行对象(用正则表达式找到匹配),然后将背景设置为某种颜色。此外,在帮助我使用调用ScrollIntoView的Run对象的标记中持有ListViewItem的引用。希望这会对你的情况有所帮助。

相关问题