我想把Gridview某一列里最小的十个数值变色,我的代码如下,但老提示错误,找不出什么错误。或者有更好的写法?protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { double[] a = new double[GridView1.Rows.Count]; \\定义一个数组 for (int i = 0; i <= GridView1.Rows.Count -1; i++) { a[i] =Convert.ToDouble(GridView1.Rows[i].Cells[4].Text); \\把GridView1的某列的值赋值到这个数组 } Array.Sort(a); \\排序 for (int k = 0; k < 10; k++) { double b = a[k]; \\读出排在前10位的数 for (int i = 0; i <= GridView1.Rows.Count - 1; i++) { double c = Convert.ToDouble(GridView1.Rows[i].Cells[4].Text); \\查找每行的值 if (b == c) \\如果等于这个数的 { GridView1.Rows[i].Cells[4].BackColor = System.Drawing.Color.Yellow;\\那一行变色。 } } } }
1 回答
一只斗牛犬
TA贡献1784条经验 获得超2个赞
你这个array.sort(a)是为了先排序然后对后面的10个数字变色,你在绑定gv的时候,对这个数据源先按那一列排序,然后取最后10行变色应该可以吧。
- 1 回答
- 0 关注
- 431 浏览
添加回答
举报
0/150
提交
取消