DataGridView滚动显示其他列

时间:2018-06-29 08:29:51

标签: vb.net reflection datagridview cells doublebuffered

我有一个datagridview,当我使用滚动条时,显示在其他列上的列,如下图所示: here

我已经尝试过DoubleBuffered

1-我创建了一个名为“ DoubleBuffer.vb”的模块

2-我在其中添加了代码:

Imports System
Imports System.Reflection
Imports System.Windows.Forms
Module DoubleBuffer
    Public Sub DoubleBuffered(ByVal dgv As DataGridView, ByVal setting As Boolean)
        Dim dgvType As Type = dgv.[GetType]()
        Dim pi As PropertyInfo = dgvType.GetProperty("DoubleBuffered", BindingFlags.Instance Or BindingFlags.NonPublic)
        pi.SetValue(dgv, setting, Nothing)
    End Sub
End Module

3-我在Load Event中调用了该模块:

DoubleBuffer.DoubleBuffered(DataGridView1, True)

但是它给了我黑色细胞

那么,我在这里遇到什么问题?

0 个答案:

没有答案