我在Windows窗体应用程序中编写代码以更改标题名称。
DataGridViewCellStyle columnHeaderStyle = new DataGridViewCellStyle();
columnHeaderStyle.BackColor = Color.Beige;
columnHeaderStyle.Font = new Font("Bookman Old Style", 8, FontStyle.Bold);
dataGridView1.ColumnHeadersDefaultCellStyle = columnHeaderStyle;
dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
dataGridView1.Columns[0].HeaderText = "Item Code";
dataGridView1.Columns[1].HeaderText = "Item Name";
但是,当我运行此代码时,显示错误。 “Index was out of range. Must be non-negative and less than the size of the collection.Parameter name: index
”
我该如何解决?
答案 0 :(得分:0)
指数超出范围。必须是非负数且小于collection.Parameter name:index
的大小
您收到此错误,因为您的datagridview没有任何列,并且您尝试访问以下代码中索引0处的列
dataGridView1.Columns[0]
当我查看您的评论时,您提到您创建了 空数据网格视图,然后为其分配数据源 。如果是这种情况,则需要在分配数据源后访问列。您还需要确保autogeneratecolumns = true
或者如果您想 创建未绑定的DataGridView 以下代码示例演示了如何创建未绑定的DataGridView;
虽然要避免异常并确保您的datagridview中有列。你可以先这样做
if(dataGridView1.Columns.Count> 2)
{
//your code
}