listview只有scrollintoview方法,让它滚动到某条记录.但是现在我不知道要滚动到哪条记录,我只要它往上滚动或往下滚动,就是模拟鼠标在它上面滚动滚轮的效果.请问如何实现?

解决方案 »

  1.   

    scrollViwer.ScrollToVerticalOffset(...)
      

  2.   

    这个我知道,但是listview你能直接获取到它内部的scrollviewer吗?
    我自己知道该怎么弄了.ListViewAutomationPeer lvap = new ListViewAutomationPeer(listView1);
    var svap = lvap.GetPattern(PatternInterface.Scroll) as ScrollViewerAutomationPeer;
    var scroll = svap.Owner as ScrollViewer;
    scroll.ScrollToVerticalOffset(scroll.VerticalOffset+1);从listview里拿出来的scrollviewer,是按元素滚动的而不是像素.
    能获取到scrollviewer就好弄了.不知道有没有更简单的获取listview的scrollviewer的方法.
      

  3.   

    因为listview本身就是借助scrollviewer实现滚动的,如果cancontentscroll=true时,内部滚动可以借由rendertransform来实现
      

  4.   


    LZ是怎么用ListViewAutomationPeer 的,我怎么用它会编译失败啊