【发布时间】:2013-11-06 14:36:12
【问题描述】:
我已经添加了这个
public class MyListView : ListView
{
public event EventHandler<EventArgs> Scrolled;
protected override void WndProc(ref Message m)
{
base.WndProc(ref m);
const int wm_vscroll = 0x115;
if (m.Msg == wm_vscroll && Scrolled != null)
{
Scrolled(this, new EventArgs());
}
}
}
当我滚动鼠标滚轮时,它会完美滚动列表,我的滚动事件不会触发。
我试过hook MouseWheel,但是在mousewheel事件返回windows之后会发生滚动,但仍然没有调用Scroll事件。
编辑:- 我添加了一个调用我的更新代码的 OnMouseWheel 事件,但这是在滚动可见区域之前调用的,所以我的更新代码遗漏了一些部分。
我希望鼠标滚轮事件滚动可见区域然后调用 onScroll 事件, 要么 让 onscroll 事件作为鼠标滚轮滚动可见区域的副产品被调用
【问题讨论】:
-
添加编辑以解释鼠标滚轮不起作用