DevExpress WinForms中文教程:Grid View - 如何列重新排序?
DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!
本文将为大家介绍如何使用DevExpress WinForms Data Grid组件实现列重新排序。
获取DevExpress WinForms v24.2正式版下载
DevExpress技术交流群11:749942875 欢迎一起进群讨论
默认操作
默认情况下,DevExpress WinForms GridView允许最终用户通过简单地拖动列的标题来重新排序列,在Visual Studio设计器中也可以使用相同的拖放功能。
指定列位置
还可以使用GridColumn.VisibleIndex属性指定列的位置。
限制最终用户的功能
默认情况下,所有列都启用标题拖放功能。要为特定列禁用它,请使用OptionsColumn.AllowMove选项。但请注意,如果移动其他列,此列的位置可能会改变。如果您想在视图中完全禁用列重新排序,请使用GridView.OptionsCustomization下的GridOptionsCustomization.AllowColumnMoving选项。
响应列顺序更改
如果您需要在运行时相应列顺序变化,处理视图的ColumnView.ColumnPositionChanged事件。在处理程序中,标识使用Sender参数移动的列,然后显示该列的标题和“类别”的列索引。
C#
private void gridView1_ColumnPositionChanged(object sender, EventArgs e) { GridColumn column = sender as GridColumn; statusBarText.Caption = string.Format("You've moved the \"{0}\" column. \"Category\" column index is: {1}", column.GetCaption(), colCategory.VisibleIndex); }
运行应用程序并移动其中一列,注意状态栏中显示的Category列的位置。
现在在类别上移动一列,现在您将看到一个列重新排序操作实际上如何影响其他列。