如何模拟datagridview ColumnDividerDoubleClick

时间:2011-05-30 02:51:42

标签: vb.net visual-studio datagridview

正如我们所知,当双击列分隔符时,列宽会自行调整大小以适合其内容。我们如何用代码模拟这种行为?

2 个答案:

答案 0 :(得分:1)

AutoResizeColumn方法:

dataGridView.AutoResizeColumn(columnIndex,
                              DataGridViewAutoSizeColumnMode.AllCells);

AutoResizeColumns一次调整所有列的大小。

答案 1 :(得分:0)

为DataGridView对象的ColumnDividerDoubleClick事件添加事件处理程序,并包含对AutoResizeColumn方法的调用,将列索引作为参数传递:

Private Sub DataGridView1_ColumnDividerDoubleClick(sender as Object, _
        e as DataGridViewColumnDividerDoubleClickEventArgs) _
        Handles DataGridView1.ColumnDividerDoubleClick

    If e.Button = MouseButtons.Left Then
        DataGridView1.AutoResizeColumn(e.ColumnIndex)
    End If

End Sub

不要将AutoResizeColumn方法与AutoSizeColumnsMode混淆 用于让DataGridView控件负责调整大小的属性 列代表用户。使用时 上面的事件处理程序,此属性应设置为 DataGridViewAutoSizeColumnsMode.None(这是默认设置)。