我正在使用TabControl在每个选项卡中插入DataGridView。 DGV的第一列是ButtonCollumn,我正在尝试通过使用行的高度来更改每个DGV的第一列中所有单元格的填充(以便所有按钮可以具有相同的大小),但是高度是与所示的不同。它对于第一个选项卡正确运行,但对其他选项卡无效。
我尝试在代码中的不同位置进行填充的更改,以防高度尚未设置,但什么都没有更改。
我已将网格的RowTemplate设置为最小值。当我查看除第一个选项卡以外的任何其他选项卡的每一行的高度时,都会看到相同的最小值。因此,最后,填充错误并且按钮过大。
我认为可能是因为当时DGV尚未绘制,所以尚未设置大小,但是第一个Tab使我相信。
这是我的填充代码,如果有帮助的话:
For each tp As TabPage In Me.TabControl1.TabPages
Dim dgv As DataGridView = tp.Controls(0)
For each row as DataGridViewRow In dgv.Rows
dim h As integer = row.Height
row.Cells(0).Style.Padding = New Padding(12,
Math.Ceiling((h -24)/2),
12,
Math.Floor((h -24)/2))
row.Cells(0).Value = h ' For debbuging purpose
Next
Next
修改:
创建DGV时,AutoSizeRowsMode
设置为AllCells
,WrapMode
设置为True
。 (如果此信息有帮助)