好吧,我设计了一个表格以适应我当前使用的屏幕尺寸,表格有一个垂直滚动条,可以在表格的下方查看项目。
在表单底部,我有一些用户必须在单击提交按钮之前选择的复选框。
一旦用户点击提交按钮,用户就无法回滚到表单的开头。用户可以向上滚动,但是当它们停止滚动时,它会滚动到最后一个复选框被关闭的底部。
我假设通过检查最后一个复选框是否设置了该控件的焦点?
有关如何解决滚动问题的任何建议吗?
答案 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