如何以编程方式在C#中向DataGrid添加行?

因此,正如标题所述,我正在尝试使用C#以编程方式向DataGrid添加行,但我似乎无法使其工作。 这就是我到目前为止所拥有的。

// I have a DataGrid declared as dg in the XAML foreach (string s in array) { int index = 0; DataGridRow dgRow = new DataGridRow(); foreach (DataGridColumn dgColumn in columns) { // Trying to add Text to dgRow here but IDK how index++; } } 

我一直在谷歌搜索,最接近我添加任何东西是使用{column = value}但它只是抛出一个错误。 现在真的出于想法:\

通过将源绑定到datagridview,您可以更好地完成此操作

  // Creating DataSource here as datatable having two columns DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(int)); dt.Columns.Add("Name"); // Adding the rows in datatable for (int iCount = 1; iCount < 6; iCount++) { var row = dt.NewRow(); row["ID"] = iCount; row["Name"] = "Name " + iCount; dt.Rows.AddRow(row); } DataGridView dgv = new DataGridView(); // Set AutoGenerateColumns true to generate columns as per datasource. dgv.AutoGenerateColumns = true; // Finally bind the datasource to datagridview. dgv.DataSource = dt; 

如果您正在使用WPF DataGrid,您可以像这样绑定它 -

 dgv.DataContext = employeeData.DefaultView; 

并在

XAML

  
 //create datatable and columns, DataTable dtable = new DataTable(); dtable.Columns.Add(new DataColumn("Column 1")); dtable.Columns.Add(new DataColumn("Column 2")); //simple way create object for rowvalues here i have given only 2 add as per your requirement object[] RowValues = { "", "" }; //assign values into row object RowValues[0] = "your value 1"; RowValues[1] = "your value 2"; //create new data row DataRow dRow; dRow = dtable.Rows.Add(RowValues); dtable.AcceptChanges(); //now bind datatable to gridview... gridview.datasource=dbtable; gridview.databind(); 

问候

你试过了吗?:

 int n=5; // number of rows you want to add dataGridView1.Rows.Add(n); // you can add (names of the rows) if you have them in your array //for(int i=0; i