大家好,我查了很多资料,仍然没有找到如何实现像win7资源管理的文件框选效果
效果如下:目前我已经查阅如下资料
1,使用winform的listview,可以多选,但是只是虚线框,而且会闪烁
2,我使用Panel之类的容器,根据鼠标按下,移动,松开等事件,使用gdi+画矩形框,能画,有两个问题,最主要是画的框在Panel上,不能再Panel所包含的各种控件上,另外一个仍然是闪烁问题
望大家帮忙,谢谢

解决方案 »

  1.   

    http://nonocast.cn/adorner-in-wpf-part-4-selection-area/
    http://www.cnblogs.com/tmywu/archive/2012/08/13/2635637.html
    可以一看
      

  2.   


    我现在的是Winform,不是WPF
      

  3.   

    http://heisetoufa.iteye.com/blog/380977
    你就不会网上找找?
      

  4.   

    http://www.baidu.com/s?wd=C%23+%E5%AE%9E%E7%8E%B0%E9%BC%A0%E6%A0%87%E6%A1%86%E9%80%89%E6%95%88%E6%9E%9C+&rsv_spt=1&issp=1&rsv_bp=0&ie=utf-8&tn=baiduhome_pg&rsv_n=2&rsv_sug3=1&rsv_sug1=1&rsv_sug4=66&inputT=1056
      

  5.   


    我已经查阅了大量资料,包括你给的连接,我要的效果是我贴出的图片效果
    而且,你给出的示例,我已经测试过,会有闪烁问题,并且不能包含Panel上的控件
      

  6.   


    我说的闪烁是相对win7资源管理器鼠标画框选择文件的平滑度而言
    win7资源管理器的鼠标画框效果非常流畅
      

  7.   

    流畅是因为WPF,如果想在普通的winform上实现这个效果,不是说不能流畅,但需要多个窗体叠加配合,比如建立一个随鼠标框选位置而置顶的透明窗体。
      

  8.   

    个人觉得自己写控件还是好点,继承Control写就可以了。
      

  9.   

    winform下一般用rubber rectangle, http://www.codeproject.com/Articles/4958/Combining-GDI-and-GDI-to-Draw-Rubber-Band-Rectangl我个人觉得winform采用gdi,没有利用directx渲染是很难做到你给出图片的效果,因为2个frame需要做blend,不利用gpu是跟不上的。