我创建c#winform应用程序包含2个控件:webbrowser和listbox(如下图所示)。
如何使用鼠标滚轮事件将鼠标悬停在控件上时自动滚动(无需点击此控件即可自动滚动浏览器(或将焦点设置为此控件,因为我想在鼠标仍然专注于文本框时滚动webbrowser)
答案 0 :(得分:0)
一种方法是在鼠标进入控件时将焦点设置为控件:
private void Control_MouseEnter(object sender, System.EventArgs e)
{
var ctrl = sender as Control;
if (ctrl == null) { return; }
ctrl.Focus();
}
还有其他更复杂的解决方案,例如在Form
捕获鼠标事件,然后在相应控件上发出滚动,如果鼠标位于它们之上,但这需要点转换和更多代码来处理滚动方法。这样做意味着滚轮将自行处理。