2016-11-14 144 views
0

在我的DataTable IAM获得2行像数据表第二行第一行

Name Age City 

A 20 c 

B 20 c 

现在我需要像第二行转移到第一行和反之亦然

Name Age City 

B 20 c 

A 20 c 

我如何能做到这一点。

+0

如果表格有三行或四行,该怎么办? –

+0

它只有2排。我需要第一排移动到第二和第二到第.. – havin

回答

4

如果你想交换两行,你可以使用以下方法:

for (int i = 0; i < table.Rows.Count; i += 2) 
{ 
    object[] row1Items = table.Rows[i].ItemArray;  // works because ItemArray creates a new object[] 
    table.Rows[i].ItemArray = table.Rows[i+1].ItemArray; // move second to first 
    table.Rows[i+1].ItemArray = row1Items;    // move first to second 
} 

它甚至两个以上的工作,它每次交换连续对行。

+0

感谢您的解决方案蒂姆。 – havin

2

看起来你想按名称对数据表中的行进行排序。 要达到此目的,可以使用以下示例:

Dim dv As DataView = dt.DefaultView 
dv.Sort = "Name desc" ' Where "Name" is your column name 
dt = dv.ToTable() 
相关问题