【问题标题】:How to sort the grid view whose column is listing integers如何对其列列出整数的网格视图进行排序
【发布时间】:2011-02-17 11:35:00
【问题描述】:

我正在使用 DataView 的“排序”属性对网格进行排序。我正在传递排序表达式和网格的排序顺序(ASC 或 DESC)。但问题是,由于我对网格进行排序的列列出了整数,所以排序就像一个字符串一样发生。但我需要在该列上进行整数排序而不是字符串排序。

网格在下面显示为升序(字符串排序) 55 77 8

但我需要这样显示列(整数排序) 8 55 77

解决办法是什么。

【问题讨论】:

  • 您可以将您当前的代码添加到您的问题中吗?它有助于我们提供更相关的解决方案。
  • if (hdnSortDirection.Value == "ASC") { dt.DefaultView.Sort = e.SortExpression + "DESC"; //dv.Sort = e.SortExpression + "DESC"; hdnSortDirection.Value = "DESC"; } else { dt.DefaultView.Sort = e.SortExpression + "ASC"; //dv.Sort = e.SortExpression + "ASC"; hdnSortDirection.Value = "ASC"; } gvSOW.DataSource = dt; gvSOW.DataBind();

标签: c# asp.net sorting gridview


【解决方案1】:

我尝试了下面的。

dt.Columns.Add("SOWId", typeof(int));

在将数据绑定到数据表之前,需要指定item模板值的类型,使用'typeof'关键字。

这解决了问题... :)

【讨论】:

    【解决方案2】:

    在 DataGrid 的 BoundField 列中,将 DataFormatString 设置为:

    DataFormatString="{0:D}"

    这将告诉该列所有单元格都包含整数,因此排序将按照您的要求正常工作。

    请参阅BoundField.DataFormatString Property 了解您可以将 BoundField 分配为的属性列表。

    【讨论】:

      猜你喜欢
      • 2011-12-28
      • 2013-04-22
      • 2010-11-15
      • 1970-01-01
      • 1970-01-01
      • 2011-12-30
      • 2015-06-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多