我有一个DataGridView
绑定到DataTable
(DataTable
绑定到数据库).我需要一个补充DataRow
到DataTable
.我正在尝试使用以下代码:
dataGridViewPersons.BindingContext[table].EndCurrentEdit(); DataRow row = table.NewRow(); for (int i = 0; i < 28; i++) { row[i] = i.ToString(); }
但它不起作用,DataGridView
从未添加过新的行.请告诉我,如何修复我的代码?
先感谢您.
您可以尝试使用此代码 - 基于 Rows.Add method
DataTable table = new DataTable(); DataRow row = table.NewRow(); table.Rows.Add(row);
链接:https://msdn.microsoft.com/en-us/library/9yfsd47w.aspx
我发现dotnetperls的例子DataRow
非常有帮助.DataTable
从那里新的代码片段:
static DataTable GetTable() { // Here we create a DataTable with four columns. DataTable table = new DataTable(); table.Columns.Add("Weight", typeof(int)); table.Columns.Add("Name", typeof(string)); table.Columns.Add("Breed", typeof(string)); table.Columns.Add("Date", typeof(DateTime)); // Here we add five DataRows. table.Rows.Add(57, "Koko", "Shar Pei", DateTime.Now); table.Rows.Add(130, "Fido", "Bullmastiff", DateTime.Now); table.Rows.Add(92, "Alex", "Anatolian Shepherd Dog", DateTime.Now); table.Rows.Add(25, "Charles", "Cavalier King Charles Spaniel", DateTime.Now); table.Rows.Add(7, "Candy", "Yorkshire Terrier", DateTime.Now); return table; }
//使用表的结构创建一个新行:
DataTable table = new DataTable(); DataRow row = table.NewRow(); table.Rows.Add(row);
//为行的列赋值(此行应该有28列):
for (int i = 0; i < 28; i++) { row[i] = i.ToString(); }