2013-04-29 98 views
0

好的,我设计了一个窗体以适应当前使用的屏幕尺寸,窗体上有一个垂直滚动条可以查看窗体上的项目。滚动条问题自动向下滚动到最后一个控件

在窗体的底部,我有几个复选框,用户在点击提交按钮之前必须选择。

一旦用户点击提交按钮,用户就不能回滚到表单的开头。用户可以向上滚动,但当他们停止滚动时,它会滚动到最后一个复选框被选中的底部。

我假设通过检查这最后一个复选框是设置该控件的焦点?

有关如何解决滚动问题的任何建议?

回答

1

请注明最后一个滚动位置的,并重新它Form_Activate

试试这个:

'' Declare at form level 
Private LastAutoScrollPos As System.Drawing.Point 

Private Sub Form1_Activated(sender As Object, e As System.EventArgs) Handles Me.Activated 
    Me.AutoScrollPosition = LastAutoScrollPos 
End Sub 

Private Sub Form1_Scroll(sender As Object, e As System.Windows.Forms.ScrollEventArgs) Handles Me.Scroll 
    If e.ScrollOrientation = ScrollOrientation.VerticalScroll Then 
     LastAutoScrollPos = New Point(LastAutoScrollPos.X, e.NewValue) 
    ElseIf e.ScrollOrientation = ScrollOrientation.HorizontalScroll Then 
     LastAutoScrollPos = New Point(e.NewValue, LastAutoScrollPos.Y) 
    End If 
End Sub 
+0

请问,如果你的滚动条与面板控制有关工作的呢? – Muhnamana 2013-05-22 14:31:06

+0

我没有用Panel控制测试过,所以现在不能给出明确的答案。不过,我认为这应该工作。只需尝试一下并检查一下。 – 2013-05-22 15:45:00

+1

谢谢,这工作正常。我决定删除我的面板,并在窗体上使用自动滚屏。再次感谢。 – Muhnamana 2013-05-23 14:11:03