C#DevExpressgridview字符串排序

编程

我们经常遇到这样的问题,字符串无法按数字排序。 首先,我们需要点击“Run Designer"

选择Columns 选择具体列,设置属性中,SortMode为Custom

然后,编写两个函数。 第一个:选中gridview,添加CustomColumnSort事件。

  private void gridView_newsaving_CustomColumnSort(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnSortEventArgs e)

{

if (e.Column != null && e.Value1 != null && e.Value2 != null)

{

string value1 = e.Value1.ToString();

string value2 = e.Value2.ToString();

int result = Comparer.Default.Compare

(ConvertToDecimal(value1, e.SortOrder), ConvertToDecimal(value2, e.SortOrder));

e.Result = result;

e.Handled = true;

}

}

添加ConvertToDecimal函数

  //字符串排序

private decimal ConvertToDecimal(string input, DevExpress.Data.ColumnSortOrder sortOrder)

{

decimal result = 0;

if (string.IsNullOrWhiteSpace(input) || input.Equals("**") || input.Equals("--"))

result = sortOrder == DevExpress.Data.ColumnSortOrder.Ascending ? 99999999 : -99999999;

else

decimal.TryParse(input, out result);

return result;

}

 

以上是 C#DevExpressgridview字符串排序 的全部内容, 来源链接: utcz.com/z/519145.html

回到顶部