- 題名: DatagridViewのスクロールの同期
- 日時: 2008/06/27 12:18:09
- ID: 22360
- この記事の返信元:
- (なし)
- この記事への返信:
- [22361] Re[1]: DatagridViewのスクロールの同期2008/06/27 22:49:45
- ツリーを表示
例えば、 DataGridView.FirstDisplayedScrollingRowIndexプロパティと、 DataGridView.Scrollイベントを使用する方法があります。 Partial Public Class TestForm3 Dim WithEvents m_dgv1, m_dgv2 As New DataGridView Private Sub testC() Dim dt As New DataTable With dt .Columns.Add(New DataColumn("Int1", GetType(Integer))) .Columns.Add(New DataColumn("Int2", GetType(Integer))) .Columns.Add(New DataColumn("Text1", GetType(String))) .Columns.Add(New DataColumn("Text2", GetType(String))) For i As Integer = 0 To 20 Dim dr As DataRow = .NewRow() dr.Item(0) = i dr.Item(1) = 100 + i dr.Item(2) = "あああ" + i.ToString dr.Item(3) = "ううう" + i.ToString .Rows.Add(dr) Next End With m_dgv1.DataSource = dt m_dgv2.DataSource = dt Me.ClientSize = New Size(500, 250) m_dgv1.Bounds = New Rectangle(10, 10, 230, 230) m_dgv2.Bounds = New Rectangle(240, 10, 230, 230) Me.Controls.Add(m_dgv1) Me.Controls.Add(m_dgv2) End Sub Private Sub m_dgv1_Scroll(ByVal sender As Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles m_dgv1.Scroll, m_dgv2.Scroll If sender Is m_dgv1 Then m_dgv2.FirstDisplayedScrollingRowIndex = m_dgv1.FirstDisplayedScrollingRowIndex m_dgv2.FirstDisplayedScrollingColumnIndex = m_dgv1.FirstDisplayedScrollingColumnIndex ElseIf sender Is m_dgv2 Then m_dgv1.FirstDisplayedScrollingRowIndex = m_dgv2.FirstDisplayedScrollingRowIndex m_dgv1.FirstDisplayedScrollingColumnIndex = m_dgv2.FirstDisplayedScrollingColumnIndex End If End Sub End Class
分類:[.NET]
はじめまして。
1つのDataGridViewのスクロールで別のDataGridViewのスクロールも同時に動かしたいと思い
http://dobon.net/vb/dotnet/datagrid/synchronousscroll.html
この記事を参考にしてみたのですが上手くいきません。
どのようにすればいいんでしょうか。