我正在尝试将 DataGridViewCell 调整为比 autosize 更小的宽度。
例如,在一列中只有“A”或没有任何可能,但如果我调整列的大小(手动或以编程方式无关紧要),字符串将“切断”为“A ...”。
有没有办法抑制这种行为?我只希望“A”恰好位于该单元格的边界之间,以便提供尽可能多的数据。
编辑:只是为了让我的问题更清楚:自动调整在列的每一侧留下少量的空白空间。
我正在尝试将 DataGridViewCell 调整为比 autosize 更小的宽度。
例如,在一列中只有“A”或没有任何可能,但如果我调整列的大小(手动或以编程方式无关紧要),字符串将“切断”为“A ...”。
有没有办法抑制这种行为?我只希望“A”恰好位于该单元格的边界之间,以便提供尽可能多的数据。
编辑:只是为了让我的问题更清楚:自动调整在列的每一侧留下少量的空白空间。
您应该修剪这些值。可能在 . 之后有尾随空格A
。这是一个简短的演示,解释了该行为:
dataGridView1.DataSource = new[] {
new{A="A "},
new{A="A"},
new{A=""}
};
重新调整大小后,您会看到只有第一行有尾随点。
或者,您可以尝试设置列的换行模式、填充、对齐和宽度:
dataGridView1.Columns[0].DefaultCellStyle.WrapMode = DataGridViewTriState.True;
dataGridView1.Columns[0].DefaultCellStyle.Padding =new Padding(0);
dataGridView1.Columns[0].DefaultCellStyle.Alignment =
DataGridViewContentAlignment.MiddleCenter;
dataGridView1.Columns[0].Width = (int)this.Font.Size * 96 / 72;
将数据源提供给网格后。请将此代码根据数据自动调整单元格宽度。
dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.Fill);
有关详细信息,您可以在该链接中向下钻取