在数据绑定后对更新的网格视图进行排序

本文关键字:视图 排序 网格 数据绑定 更新 | 更新日期: 2023-09-27 18:21:20

这是我代码中的问题部分。

 DataView view = ds.Tables[0].DefaultView;
 view.Sort = "user_id ASC, ip_address DESC;
 BalaiStatus.DataSource = view;
 BalaiStatus.DataBind();
 >>BalaiStatus.DataBind().Sort = "ip_address ASC";<<

BalaiStatus将处理函数BalaiStatus_RowDataBound。这段代码是为了消除网格视图中的同一行。代码为:-

 string lastRow = "";

 protected void BalaiStatus_RowDataBound(object sender, GridViewRowEventArgs e)
 {
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         var thisRow = e.Row;
         if (thisRow.Cells[0].Text == lastRow)
         {
             e.Row.Visible = false;
        }
     }
     else {
          DataRowView view = (DataRowView)e.Row.DataItem;
          string login = Convert.ToString(view["ip_address"]);
          if (login == "")
          {
              e.Row.Cells[2].BackColor = Color.Red;        
          }
          else
          {             
              Global.rowCount = Global.rowCount + 1;
              e.Row.Cells[2].ForeColor = Color.White;
              e.Row.Cells[2].BackColor = Color.Green;
          }
          Global.allCount = Global.allCount + 1;
     }
     lastRow = thisRow.Cells[0].Text;
 }

所以,我需要的是,在消除相同的行之后,我想再次对gridview中更新的数据进行排序。请参阅>>代码<lt;。。

任何人请在这个问题上帮助我。感谢你的意见或建议。谢谢西蒂。

在数据绑定后对更新的网格视图进行排序

在设置网格视图的源之前,应该过滤重复的行。这将允许您在绑定网格之前进行排序。

这将取决于数据集ds的来源,您是如何获得这些数据的?

Rowdatabound不应用于向表中删除/添加行,而应用于数据集中的表存储ds