在 C# 中更改 dataGridView 的列宽

3
我希望您能够手动更改datagridview中列的宽度。该怎么做?我应该在designer.cs或cs文件中进行修改吗?
我已经在代码中添加了一些内容,但是没有生效:
dataGridView1.Columns[0].Width = 200;

这是我的代码:
private void sqlConnResident()
        {
            BindingSource dbBindSource = new BindingSource();

            SqlCommand com;
            com = new SqlCommand();
            SqlConnection con = new SqlConnection(strCon);

            com.Connection = con;
            com.CommandType = CommandType.StoredProcedure;
            com.CommandText = "view_penghuni";

            SqlDataAdapter dataAdapter = new SqlDataAdapter(com);

            IDCabang = new SqlParameter();
            IDCabang.SqlDbType = SqlDbType.VarChar;
            IDCabang.Size = 5;
            IDCabang.ParameterName = "@IDCabang";
            IDCabang.Value = IDCabangC;
            IDCabang.Direction = ParameterDirection.Input;

            com.Parameters.Add(IDCabang);

            con.Open();

            DataTable table = new DataTable();
            table.Locale = System.Globalization.CultureInfo.InvariantCulture;
            dataAdapter.Fill(table);
            dbBindSource.DataSource = table;

            //dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
            // you can make it grid readonly.
            dataGridView1.ReadOnly = true;
            // finally bind the data to the grid
            dataGridView1.DataSource = dbBindSource;
            //this doesn't work
            dataGridView1.Columns[0].Width = 200;
            dataGridView1.Columns[1].Width = 200;

            con.Close();
        }
1个回答

7

从您的代码中删除以下内容:

dataGridView1.Columns[0].Width = 200;
dataGridView1.Columns[1].Width = 200;

并将其添加到您的表单构造函数中:

Load += Form1_Load;

此处的 Form1_Load 是指:

private void Form1_Load(object sender, EventArgs e)
{
    dataGridView1.Columns[0].Width = 200;
    dataGridView1.Columns[1].Width = 200;
}

1
RoutedEventArgs 出现错误,我应该将其更改为其他内容吗? - noobprogrammer
1
我应该在 sqlConnResident 中添加 Load += Form1_Load; 吗?我已经尝试过了,但列宽仍然不会改变。 - noobprogrammer
1
在Form类的构造函数中添加“Load += Form1_Load;”。 - Rafal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接