小弟初学VS2003 
不知如何将绑定于DataGrid里的学生成绩排序?
考虑先排序好再传到DataGrid里,但视图不支持ORDER BY(因为DataGrid里的数据列来自不同表,所以临时创建视图)请求高手解答如何排序,另外如何在DataGrid首列加一个名次列?

解决方案 »

  1.   

    第二个问题,模版列可以解决...自己BaiDu一下吧,具体代码忘了...第一个不太清楚...
      

  2.   

    数据库的视图不可排序,但内存的dataview是可排序的.
    如:DataView dv = dt.DefaultView;
    dv.Sort = "字段"this.DataGrid1.DataSoruce = dv;
      

  3.   

    另外如何在DataGrid首列加一个名次列?==>
    按成绩逆排序后.加个模板列.
    <%#( (DataGridItem)Container).ItemIndex+1%>
      

  4.   

    cpp2017(慕白兄) 数据库的视图不可排序,但内存的dataview是可排序的.
    如:DataView dv = dt.DefaultView;
    dv.Sort = "字段"this.DataGrid1.DataSoruce = dv;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    能具体点吗?是在SortCommand里执行吗?
      

  5.   

    调试通过
    SqlDataAdapter da = new SqlDataAdapter(sql,Conn);
                
    DataTable dt = new DataTable();
    // 填充数据到DataTable
    da.Fill(dt);
    // 创建DataViewDataView dv = new DataView(dt);
    dv.Sort="score desc";
    // 数据绑定
    dg.DataSource = dv;
    dg.DataBind();