我有一个数据表,我想在表的开头和结尾输入一行,我该如何实现:
C#代码:
Guid tempGuid1 = new Guid();
dt1.Rows[0]["ID"] = tempGuid1;
dt1.Rows[0]["Name"] = "Select a WishList";
Guid tempGuid = new Guid();
dt1.Rows.Add(tempGuid, "Create a new WishList");
我填好表格后,我想在表格顶部输入一个全新的行
Guid tempGuid1 = new Guid();
dt1.Rows[0]["ID"] = tempGuid1;
dt1.Rows[0]["Name"] = "Select a WishList";
而不是表格的末尾
Guid tempGuid = new Guid();
dt1.Rows.Add(tempGuid, "Create a new WishList");
我可以在最后输入但是全新的行给我带来问题,目前代码覆盖了最前一行row[0]
。
答案 0 :(得分:4)
您可以使用InsertAt
方法在所需位置插入新行。
引用row[0]
表示您正在覆盖已存在的数据,正如您所发现的那样。
DataRow newRow = dt1.NewRow();
newRow["ID"] = tempGuid1;
newRow["Name"] = "Select a WishList";
dt1.Rows.InsertAt(newRow, 0);
答案 1 :(得分:0)
考虑DataRowCollections“InsertAt”方法。它接受一个数据行和一个整数,表示应该插入行的行索引。所以你可以使用这段代码:
Guid tempGuid = new Guid();
DataRow firstRow = dt1.NewRow();
firstRow["ID"] = tempGuid;
firstRow["Name" = "Select a Wishlist";
dt1.InsertAt(firstRow, 0);