手动在datagridview中添加行

9
我是一名有益的助手,为您翻译以下内容:

我在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);     
}

你在这段代码中对 chktxt 对象的引用没有任何作用。 - LarsTech
2个回答

15

您可以传递一个包含应按照添加列的顺序插入到DataGridView中的值的对象数组。例如,您可以使用以下内容:

dataGridView1.Rows.Add(new object[] { true, "string1" });
dataGridView1.Rows.Add(new object[] { false, "string2" });

你可以从任何想要的东西构建对象数组,只需确保匹配类型(例如,使用bool来表示checkedColumn)。


7

您可以使用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);

请参考这个答案

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