DataTable +在C#中的特定行输入行

时间:2010-06-30 13:31:28

标签: c# datatable

我有一个数据表,我想在表的开头和结尾输入一行,我该如何实现:

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]

2 个答案:

答案 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);