Sorting

本节提供有关在数据网格中对数据进行排序的信息。

GridControl-Grid View

Sort Data

默认情况下,最终用户可以按任何列对数据进行排序,但使用MemoExEdit、ImageEdit和PictureEdit在位编辑器的列除外。在运行时,单击列标题一次以升序排列数据。相应的单击将颠倒排序顺序。列标题中的排序图示符(向上或向下箭头)指示当前排序顺序。
在这里插入图片描述
要按特定列对数据进行排序,最终用户也可以右键单击此列的标题,然后选择“升序排序”或“降序排序”。
在这里插入图片描述

相关API

  • GridOptionsCustomization.AllowSort——禁用按任何网格列排序。
  • OptionsColumn.AllowSort——禁用按此特定列排序

Multi-Column Sorting

当用户单击列标题时,数据网格将放弃当前应用的排序,而当用户通过标题上下文菜单对数据进行排序时,数据栅格将保留该排序。因此,要按多列对数据进行排序,最终用户应该使用标题上下文菜单,或者在单击列标题时按住Shift键。在下图中,数据首先按“客户ID”字段升序排列,然后按订单日期降序排列。

在这里插入图片描述

Clear Sorting

要删除按特定列排序的数据,最终用户应单击该列的标题并按下Ctrl键。或者,用户可以右键单击此标题并选择“清除排序”。要同时删除按所有列排序,请选择“清除所有排序”。
在这里插入图片描述

相关API

  • GridOptionsCustomization.AllowSort——通过按住Ctrl键并单击列标题来防止用户取消数据排序,并禁用所有网格列的“清除排序”选项。
  • OptionsColumn.AllowSort——通过按住Ctrl键并单击此列的标题来防止用户取消数据排序,并禁用此列的“清除排序”选项。
  • GridView.PopupMenuShowing——允许您手动修改或删除上下文菜单项,用户可以使用它更改排序。下面的代码更改了“清除所有排序”项目行为,因此最终用户将无法删除按“订单日期”列预定义的排序。
using System.Linq;
using DevExpress.Utils.Menu;
//. . .
gridView1.PopupMenuShowing += GridView1_PopupMenuShowing;
//. . .
private void GridView1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e) {
    DXMenuItem clearSorting = e.Menu.Items.First(x => x.Caption == "Clear All Sorting");
    clearSorting.Click += ClearSorting_Click;
}

private void ClearSorting_Click(object sender, EventArgs e) {
    gridView1.SortInfo.ClearAndAddRange(new[] {
            new GridColumnSortInfo(colOrderDate, DevExpress.Data.ColumnSortOrder.Ascending)
        });
}

Sort Groups by Summary Values

数据网格可以根据这些组的摘要值对这些组进行排序。有关详细信息,请参阅摘要文章。
在这里插入图片描述

Sort Modes

默认情况下,具有LookUpEdit和ImageComboBoxEdit在位编辑器的列按编辑器的显示值对数据进行排序。其他列根据编辑器的编辑值对数据进行排序。使用GridColumn.SortMode属性以更改此排序模式。

在下图中,具有ImageComboBoxEdit的列被强制按优先级从低到高对项目进行排序。为此,请使用 GridColumn.SortMode必须更改为 ColumnSortMode.Value否则,项目将按显示值的字母顺序进行排序。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值