1

我的 VB 应用程序中有一个 datagridview。我无法调整列的大小。我用数据表填充 datagridview。我的 datagridview (AllowUserToReziseColumn) 的属性设置为 true。

在此处输入图像描述

我可以在红色圆圈中调整大小,旁边有绿色检查。但它的其余部分似乎是数据表。有什么见解吗?

填充 DataGrid 代码

Using conn As SqlConnection = New SqlConnection(ConnectionString)
    conn.Open()
    Using comm As SqlCommand = New SqlCommand(sqlquery, conn)
        Dim rs As SqlDataReader = comm.ExecuteReader
        Dim dt As DataTable = New DataTable
        dt.Load(rs)
        datgDXLog.DataSource = dt
    End Using 'comm
    conn.Close()
End Using 'conn

我什至在 prepaint 中重申了 allowusertoresizerows

 datgDXLog.AllowUserToResizeColumns = True
        If datgDXLog.Rows.Count >= 3 Then
            If datgDXLog.Rows(e.RowIndex).Cells(3).Value >= 3 Then
                datgDXLog.Rows(e.RowIndex).DefaultCellStyle.ForeColor = Color.Red
            End If
        End If

我相信我的问题是它是一个数据表。这让我认为 datagridview 属性不能控制这一点,但是当我将属性 (AllowUsertoOrderColumns) 更改为 True 时,我可以重新排序列标题。

4

1 回答 1

2

查看 DGV 列的DataGridViewColumn.AutoSizeMode 属性值。

确保它们设置为DataGridViewAutoSizeColumnMode.NoneDataGridViewAutoSizeColumnMode.NotSet

于 2013-07-17T19:28:38.420 回答