说明
GridControl是devexpress中的表格控件,有很多玩法,也有很多坑,记录一下遇到的问题。
隐藏group
刚拖进来的GridControl总是有个header "Drag a column header here to group by that column",一般用不到,隐藏设置
OptionView->ShowGroupPanel->false
gridcontrol显示标题(Caption)
选择gridcontrol->run designer
Caption用来显示标题
ColumnEdit 选择显示控件的类型
FileName 需要绑定现实的字段(类的属性或者数据库列名)
gridControl 分组显示
(例如按照字段group分组)
gridView.Columns["group"].GroupIndex = 0;
gridView.ExpandAllGroups();
gridView.GroupSummary.Add(SummaryItemType.None, "group", null);
gridControl 显示行号
private void gridView1_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e)
{
if (e.Info.IsRowIndicator)
{
e.Info.DisplayText = "Row " + e.RowHandle.ToString();
}
}
gridView.IndicatorWidth = 70;
隐藏显示行号的那一列
RunDesigner->Views->Options->OptionsView->ShowIndicator
右键菜单
OptionMenu->EnableColumnMenu
水平滚动条
gridView.OptionsView.ColumnAutoWidth = false
设置列的标题居中显示
Designer - Views -右侧输入框中输入Appearance-HeaderPanel-TextOptions-设置HAlignment为Center
设置不可编辑
gridcontrol -->gridview -->OptionsBehavior -->Editable=false
在gridcontrol列表控件中使用单选框作为选择列
这里有两种方式
-
选择gridcontrol控件的Run Designer按钮,选中gridview,设置gridview的MultiSelect和MultiSelectMod->CheckBoxRowSelect
-
选择gridcontrol控件的Run Designer按钮,添加一列,设置该列的ColumnEdit为checkedit,设置gridview的optionscolumn的AllowEdit为false(设置改列不可编辑)
GridControl页面修改了列值后直接获取值获取不到
使用PostEditor更新DataSource⭐
this.gridView.PostEditor();
var dt = this.gridControl.DataSource as DataTable;