读书人

WPF怎么用代码控制ListView滚动

发布时间: 2012-12-15 15:16:03 作者: rapoo

WPF如何用代码控制ListView滚动?
listview只有scrollintoview方法,让它滚动到某条记录.但是现在我不知道要滚动到哪条记录,我只要它往上滚动或往下滚动,就是模拟鼠标在它上面滚动滚轮的效果.请问如何实现?
[最优解释]
scrollViwer.ScrollToVerticalOffset(...)
[其他解释]

引用:
scrollViwer.ScrollToVerticalOffset(...)

这个我知道,但是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的方法.
[其他解释]
因为listview本身就是借助scrollviewer实现滚动的,如果cancontentscroll=true时,内部滚动可以借由rendertransform来实现
[其他解释]
引用:
引用:
scrollViwer.ScrollToVerticalOffset(...)
这个我知道,但是listview你能直接获取到它内部的scrollviewer吗?
我自己知道该怎么弄了.


C# code?



12345

ListViewAutomationPeer lvap = new ListViewAutomationPeer(lis……


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

读书人网 >C#

热点推荐