
我有一个面板上有很多画框.它有
autoScroll = true
滚动条可以正常拖动,或者点击它.但是,我想用滚轮和箭头键滚动它.
轮子根本没有响应(并且添加事件处理程序到窗体不起作用,因为当我改变焦点时停止触发),并使用箭头键,我必须编程滚动.我试过以下:
panel3.VerticalScroll.Value = panel3.VerticalScroll.Maximum;
这不起作用,滚动条几乎没有移动.由于某种原因,最大值为100.
我试过的轮子问题(不工作):
// Fires as long as i don't change focus to anythingthis.MouseWheel += new MouseEventHandler(Panel1_MouseWheel);private voID Panel1_MouseWheel(object sender,MouseEventArgs e){ panel3.Focus();} 谢谢.
解决方法 一对夫妇要尝试:使您的Panel具有第一个TabIndex属性.那是:
panel1.TabIndex = 0;
显然,表单上的其他控件应该被正确地重新索引.
另外,尝试在MouseDown事件中添加焦点:
voID panel1_MouseDown(object sender,MouseEventArgs e) { if (!panel1.Focused) panel1.Focus();} 您也可以执行MouseEnter,但这可能是一个奇怪的用户界面,因为将鼠标移到面板上会将焦点从当前的主动控制中移除.
您不需要订阅MouseWheel事件.它应该自动移动滚动条.
总结以上是内存溢出为你收集整理的C#在Windows窗体中滚动面板全部内容,希望文章能够帮你解决C#在Windows窗体中滚动面板所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)