Bre*_*ell 6 .net c# datagridview cells dynamic-columns
有没有办法给DataGridView中的每列提供总网格的百分比宽度?我目前使用的是固定宽度,但是希望为一列提供15%的宽度,另一列为25%的宽度,依此类推,以便填充表格的100%并使用网格调整大小.
Ase*_*tam 16
尝试使用DataGridViewColumn.FillWeight属性.基本上,您为每列指定权重,并根据这些权重重新调整列的大小.MSDN arcticle并不是那么好.请参阅以下文章以获得更好的解释 -
使用.NET 2.0中的DataGridView控件呈现数据 - 自动列大小调整
尝试这个
private void DgvGrd_SizeChanged(object sender, EventArgs e)
{
dgvGrd.Columns[0].Width = (int)(dgvGrd.Width * 0.2);
dgvGrd.Columns[1].Width = (int)(dgvGrd.Width * 0.2);
dgvGrd.Columns[2].Width = (int)(dgvGrd.Width * 0.4);
dgvGrd.Columns[3].Width = (int)(dgvGrd.Width * 0.2);
// also may be a good idea to set FILL for the last column
// to accomodate the round up in conversions
dgvGrd.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
}
Run Code Online (Sandbox Code Playgroud)