我需要同步两个DataGridView
控件的滚动事件,这样当我水平滚动第一个DGV时,第二个DGV也应该以相同的方式滚动。
有可能吗?这可以在设计时设置吗?
答案 0 :(得分:4)
这可以在代码中完成,如下所示。您可能正在寻找一种C#方式。但以下是我在VB.NET应用程序中使用的代码。只需将其转换为C#;)
对于第一个网格写...
Private Sub DataGridView1_Scroll(ByVal sender As Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles DataGridView1.Scroll
If e.ScrollOrientation = ScrollOrientation.VerticalScroll Then Exit Sub
If Me.DataGridView2.Rows.Count > 0 And Me.DataGridView1.Rows.Count > 0 Then
Me.DataGridView2.HorizontalScrollingOffset = e.NewValue 'Me.DataGridView1.HorizontalScrollingOffset
End If
End Sub
对于第二个网格写...
Private Sub DataGridView2_Scroll(ByVal sender As Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles DataGridView2.Scroll
If e.ScrollOrientation = ScrollOrientation.VerticalScroll Then Exit Sub
If Me.DataGridView1.Rows.Count > 0 And Me.DataGridView2.Rows.Count > 0 Then
Me.DataGridView1.HorizontalScrollingOffset = e.NewValue 'Me.DataGridView2.HorizontalScrollingOffset
End If
End Sub
希望这有帮助吗?