是否为winforms数据网格动态分配列宽?

是否为winforms数据网格动态分配列宽?,winforms,datagridview,width,Winforms,Datagridview,Width,我已经用这个创建了datagrid的列 private void Receive_Load(object sender, System.EventArgs e) { DataGridView1.Columns.Add("Sender",typeof(string)); DataGridView1.Columns.Add("Time",typeof(string)); DataGridView1.Columns.Add("Message

我已经用这个创建了datagrid的列

   private void Receive_Load(object sender, System.EventArgs e)
    {
        DataGridView1.Columns.Add("Sender",typeof(string));
        DataGridView1.Columns.Add("Time",typeof(string));
        DataGridView1.Columns.Add("Message",typeof(string));
    }
  • 如何为winforms datagrid动态分配列宽
    • 这里有一个建议:
      如果知道字段的长度,可以将其长度乘以常量值(例如最大字符宽度),以生成动态宽度

      我想你是在寻找什么线索

      DataGridView1.Columns["ColumnName"].Width = 75;
      
      我希望它能帮助你


      此外,可以设置列的AutoSizeMode以自动获得不同的行为。例如,如果将其设置为ColumnHeader,则单元格宽度将设置为最适合显示标题文本的宽度。你可以在这里获得更多信息

      链接(以及您的代码)引用的是DataGridView控件,而不是DataGrid。正如您所做的,我假设我们讨论的是DataGridView控件,因为DataGrid没有列属性。为了避免将来的误解,我把这个问题改为DataGridView。谢谢,但dt听起来更像DataTable。你说得对。我还编辑了问题和答案以反映这一事实。我知道,这是一个老问题,但您使用的是DataGrid还是DataGridView?DataGrid没有Columns属性,假设这就是dt。(或者dt是一个数据表?)。