DataGridView.AutoResizeColumns 忽略列标题高度

Nun*_*uno 8 c# datagridview winforms

我有一个DataGridView我想要从所有该列的项目(包括标题)中调整为最大单元格的列。我有这个:

dataGridViewMain.ColumnHeadersHeight = 60;
dataGridViewMain.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
Run Code Online (Sandbox Code Playgroud)

为什么该代码会导致几列如下所示:

显然保留了比必要更多的空间,我检查了所有行。没有一个包含超过 3 个字符。这种行为也会发生在各个列上。看起来是在AutoResizeColumns计算所需的空间时没有考虑到列标题的大小为 60 并且可以容纳各种文本行。

Irs*_*had 8

您的网格标题正在调整标题文本的大小。有一个属性dataGridViewMain需要调整。

设置如下;

dataGridViewMain.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
Run Code Online (Sandbox Code Playgroud)

这也可以通过属性窗口设置;

调整大小