网格视图比较

时间:2009-03-30 06:22:14

标签: asp.net vb.net

我想比较两个网格视图的行.GW1和GW2。

当我点击搜索按钮时,我想检查GW2中的值,如果GW1和GW2具有相同的PayID,EmpID,则必须禁用该特定的GW1行

由于

3 个答案:

答案 0 :(得分:1)

int i = 0;

while(i < GridView1.Rows.Count && i < GridView2.Rows.Count)
{

if(
GridView1.Rows[i].Cells[column for pay ID].Text == GridView2.Rows[i].Cells[column for pay ID].Text && 
GridView1.Rows[i].Cells[column for emp ID].Text == GridView2.Rows[i].Cells[column for emp ID].Text))
{
GridView1.Rows[i].Enabled = false;
}


i++;

}

答案 1 :(得分:0)

我能想到的唯一方法是遍历第一表并在表二中搜索类似的行。这是你如何做到这一点:

  1. 循环通过表1.
  2. 使用DataTable.Select查找表2中是否存在具有相同PayID和EmpID的行。
  3. 如果方法返回的行数超过0行,则禁用行。
  4. 除此之外,您还可以考虑编写/搜索可以为您提供两个表的交集的方法。如果这两列是priamry键,那么这将起作用。如果没有,那么您需要根据需要调整代码。

答案 2 :(得分:0)

做这样的事情,不是实际的代码,但你会有这个想法。

for i=0 to gw1rowscount-1
     for j=0 to gw2rowscount-1

       if gw1(i)(column1)=gw2(j)(column1) and gw1(i)(column2)=gw2(j)(column2) then

       end if

     next
next
相关问题