排序混合网格视图中的数字和字符

时间:2016-01-21 12:37:16

标签: c# sorting radgrid

我的订单代码 telerik RadGrid 中有字符和数字,如: "DO-2016-1" ,排序操作对它们进行排序作为字符串,不考虑订单代码中包含的数字。我该如何解决问题

enter image description here

1 个答案:

答案 0 :(得分:1)

一种方法是这样做:

  1. 将您的order code拆分为string.Split('-')
  2. 将它们放入一个名为OrderCode的新类中,该类有三个成员(1. DO,2。2016,3.1) - 比方说,名称为firstNosecondNothirdNo
  3. 将每个人放入List<OrderCode>
  4. 使用LINQ OrderBy代替Sort,按照您希望的方式订购List<OrderCode>
  5. 如有需要,请为每个string重新创建OrderCode

    string newStr = oc.FirstNo.ToString() + "-" + oc.SecondNo.ToString() + "-" oc.ThirdNo.ToString();
    
  6. 注意:您可以按照适合代码的方式应用上述概念