我在datagridview上插入了一个复选框列和文本框列。 如何在文本框列上手动添加行。
应该是这样的:
checkbox | textbox
............................
checkbox | item1
checkbox | item2
checkbox | item3
checkbox | item4
以下是datagridview
上复选框和文本框的代码public void loadgrid()
{
DataGridViewCheckBoxColumn checkboxColumn = new DataGridViewCheckBoxColumn();
CheckBox chk = new CheckBox();
checkboxColumn.Width = 25;
dataGridView1.Columns.Add(checkboxColumn);
DataGridViewTextBoxColumn textboxcolumn = new DataGridViewTextBoxColumn();
TextBox txt = new TextBox();
textboxcolumn.Width = 150;
dataGridView1.Columns.Add(textboxcolumn);
}
答案 0 :(得分:14)
您可以按照添加列的顺序传递包含应插入DataGridView
的值的对象数组。例如,你可以使用它:
dataGridView1.Rows.Add(new object[] { true, "string1" });
dataGridView1.Rows.Add(new object[] { false, "string2" });
你可以从你想要的任何东西构建对象数组,只需确保匹配类型(即使用bool for checkedColumn)
答案 1 :(得分:6)
您可以使用Rows集合手动填充DataGridView控件,而不是将其绑定到数据源。
this.dataGridView1.Rows.Add("five", "six", "seven", "eight");
this.dataGridView1.Rows.Insert(0, "one", "two", "three", "four");
你也可以这样做:
DataGridViewRow row = (DataGridViewRow)yourDataGridView.Rows[0].Clone();
row.Cells["Column2"].Value = "XYZ";
row.Cells["Column6"].Value = 50.2;
yourDataGridView.Rows.Add(row);
请参阅this answer