【发布时间】:2012-01-27 07:49:27
【问题描述】:
我使用的是 VS2010,Windows 7
我有一个带有很多图片框的面板。它有
AutoScroll = true
当我拖动它或单击它时,滚动条可以正常工作。但是,我想用滚轮和箭头键滚动它。
轮子根本不响应(并且向表单添加事件处理程序不起作用,因为当我改变焦点时它会停止触发),并且要使用箭头键,我必须以编程方式滚动。我尝试了以下方法:
panel3.VerticalScroll.Value = panel3.VerticalScroll.Maximum;
这不起作用,滚动条几乎没有移动。 最大值出于某种原因始终为 100。
我尝试过的车轮问题(不起作用):
// Fires as long as i don't change focus to anything
this.MouseWheel += new MouseEventHandler(Panel1_MouseWheel);
private void Panel1_MouseWheel(object sender, MouseEventArgs e)
{
panel3.Focus();
}
谢谢。
【问题讨论】:
-
您必须先将焦点设置在控件上,然后它才能使用鼠标滚轮滚动。尝试先点击它。
-
不起作用。我点击面板,它是图片框,甚至是文本框。轮子坏了。
-
使用 TablelayoutPanel ?
-
试过TableLayoutPanel和FlowLayoutPanel,同样的问题。