这是我的代码中的问题部分。 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。此代码是为了消除gridview中的同一行。代码是:- 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中的更新数据进行排序。请参阅>> code 有人请在这个问题上帮助我。感谢您的意见或建议。感谢Siti。 最佳答案 在设置gridview的源之前,您应该过滤重复的行。这也将允许您在绑定网格之前进行排序。这将取决于数据集ds的来源,如何获取这些数据?Rowdatabound不应用于向表中删除/添加行,而应对数据集ds中的表存储执行此操作关于c# - 在数据绑定(bind)后对更新的gridview进行排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17518881/ 10-15 03:50