已答复 怎么改变所选择的文字的背景色?

  • 2012年4月20日 7:04
     
     
    我是将一个pdf页面render到位图上面,我可以获取到所选择文字的rect,但是要怎么让这些rect高亮,并显示出来??我看了论坛里面一个关于改变listview里面文字背景色的帖子,但是不是很明白。。。。。

全部回复

  • 2012年4月20日 7:06
     
     
    有没有这方面Win8的demo?
  • 2012年4月23日 12:07
     
     
    你是用什么控件呢?
  • 2012年4月23日 12:23
     
     已答复

    如果是listview建议看看下面..如果是其他的不妨说一下

    http://social.msdn.microsoft.com/Forums/zh-CN/metroappzhcn/thread/56f345e9-e8b1-4013-a60e-671aee90e4b0

    如何改变ListView选中项的背景色

  • 2012年4月24日 10:11
    版主
     
     已答复

    之所以我们可以改变ListView和其内容的的颜色,是因为他们是一个个具体的可视元素组合起来的,有其定义好的样式和模板。比如一个按钮,他就有Border, Label, 矩形等组合起来。我们可以分别进行修改定义,这个和WPF,Silverlight中的方式是一致的。

    但是根据你的描述,你是将PDF 直接绘制出来,我不清楚你是如何绘制的,是否有绘制出的一个个独立的元素我们可以获得。还有你的所谓的Rect只是一个矩形范围,你只有通过判断和遍历找到这个范围内的所有的文字元素,改变其颜色才可以达到高亮。

    如果你是直接Draw了一些文字(不清楚你怎么实现的),那么你就需要对其rect范围内的文字重绘。这个原理跟GDI重绘是一样的,某个区域需要更新改变,我们就需要进行重新的绘制他。

    最后一个小疑问,是Metro Style App吧?


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us