我有一个绑定到数据源的datagridview。当我单击“编辑”按钮或“新建”按钮时,我必须在datagridview中添加一个新行。我尝试了一些代码,但它给了我错误,代码如下所示
DataGridView grdview = new DataGridView();
grdview.Rows.Add();
grdview.Rows[grdview.Rows.Count - 1].Cells[0].Selected = true;
grdview.BeginEdit(false);
我还尝试将数据源类型转换为数据表但没有解决方案。
答案 0 :(得分:7)
不,如果DataGridView
是绑定到某些数据源的数据,则无法添加新的行/列。您必须使用所需的列创建新数据集(DataTable
或其他),然后将DataGridView
重新绑定到该数据集。
我希望这会有所帮助。
答案 1 :(得分:5)
您似乎正在使用DataSource
的{{1}}属性。当此属性用于绑定到数据时,您无法直接向DataGridView显式添加行。 您必须直接在数据源中添加行。
DataGridView
If you are binding a List
//Assume Student list is bound as Dtaasource
List<Student> student = new List<Student>();
//Add a new student object to the list
student .Add(new Student());
//Reset the Datasource
dataGridView1.DataSource = null;
dataGridView1.DataSource = student;
If you are binding DataTable
答案 2 :(得分:4)
转而绑定到BindingSource
,您将保留NewRow