0

我有gridview。因为在gridview中使用获取表数据时sqldatasource,我可以通过启用对表数据进行排序AllowSorting="True"。但是当尝试使用获取表数据时,C#我无法对其进行排序。

这是我对该输出的屏幕截图:

在此处输入图像描述

这是我检索表数据的 C# 代码:

SqlConnection con = new SqlConnection("Data Source=abc\\SQLEXPRESS;Initial Catalog=mvw;Integrated Security=true;");
    con.Open();
    SqlCommand cmd = new SqlCommand("SELECT  [POID],[SNO],[PartNo],[PartDesc],[Desc2],[OrderNos],[Rate]  ,[Quantity]   ,[units]  ,[Status] ,[RecvOrderNos]    ,[RecvQty]  ,[QtySplitUp]  ,[Remarks] ,[BalQty] FROM [PoToSupplierMasterItems] WHERE POID='" + ddlSelectProcess .SelectedItem.Text+ "'", con);
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    DataSet ds = new DataSet();
    da.Fill(ds);
    GridView1.DataSource = ds;
    GridView1.DataBind();

如何做到这一点?

4

1 回答 1

0

嗨 Dine,当您将网格与数据表绑定时,您可以轻松地对该表的列进行排序,然后可以与 gridview 绑定。所以,你需要做的是:

1) 使用 linq 对数据表的列进行排序
2) 将 gridview 与上一步的结果绑定

这是代码。如果它满足您的要求,请不要忘记标记为答案并投票。

  var result = ds.Tables[0].AsEnumerable().OrderBy(r => r["yourcolumnname"]);
  GridView1.DataSource = result.CopyToDataTable();
于 2013-10-26T05:04:00.843 回答