1.什么意思?没有DataTable那来的DataView?你想反了吧?
2.DataSet.Tables[0].DataView.Sort="...."

解决方案 »

  1.   

    完全没有必要这样做的,排序好的table和没排序好的,在执行起来没有任何区别的。如果你要排好的table,知道在sql里面order by就可以了
      

  2.   

    dataset 的table就是用通过dataview来进行排序,
    然后数据源的。
    比如
    mytable.DataView.Sort=" id desc";
    datagrid1.DataSource=dataset.table.DefaultView;
      

  3.   

    用戶選選擇排序後, 想以此排序打印輸出, 而CrystalReport輸出時是根據dataset 的table 中的原始順序輸出的.private void DataGrid1_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
    {
    this.ReadDataFromXMLFile();  //重新從服務器讀取最新數據
    DataView dvts=(DataView)Session[this.MaterialUnitPriceTable]; if (isasc)
    {
    dvts.Sort=e.SortExpression + " ASC";
    }
    else
    {
    dvts.Sort=e.SortExpression + " DESC";
    }
    isasc=!isasc;

    this.DGBindData(dvts);
    Session[this.MaterialUnitPriceTable]=dvts;   //儲存排序後的dataview
    }private void Button1_Click(object sender, System.EventArgs e)
    {
    this.ReadDataFromXMLFile();
    crpt.SetDataSource(this.dataSet1.Tables[0]);

    this.CrystalReportViewer1.ReportSource=this.crpt;
    this.CrystalReportViewer1.DataBind();
    this.CrystalReportViewer1.Visible=true;
    }