DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DatagridViewのスクロールの同期

環境/言語:[VB.net]
分類:[.NET]

はじめまして。
1つのDataGridViewのスクロールで別のDataGridViewのスクロールも同時に動かしたいと思い
http://dobon.net/vb/dotnet/datagrid/synchronousscroll.html
この記事を参考にしてみたのですが上手くいきません。
どのようにすればいいんでしょうか。
例えば、
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
DataGridView.FirstDisplayedScrollingRowIndexプロパティというものの存在に気づいていませんでした。
ありがとうございました!
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板