- 1
拖入gridcontrol,选中run designer 打开设计页面 - 2 选中mainview 对应的girdview
- 3 OptionsView:
ShowIndicator 是否显示序号,涉及事件CustomDrawRowIndicator
IndicatorObjectInfoArgs info = e.Info;
if (info == null || !info.IsRowIndicator || e.RowHandle < 0)
return;
info.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
info.DisplayText = (e.RowHandle + 1).ToString();
ShowGroupPanel 是否显示标题栏
-
4 OptionsSelection
MultiSelect 是否允许多选
MultiSelectMode CheckBoxRowSelect 复选框多选
RowSelect 行选中多选 -
5 OptionsBehavior
Editable 表格禁止编辑 (一般设置在列上,此属性会禁止行内编辑按钮点击)
EditorShowMode 不设置此属性,行内编辑要双击按钮才会触发 设置MouseDown 单击就会触发 -
6 行内编辑操作列
指定列的ColumnEdit 为自己需要的控件
一般为ButtonEdit,
Buttons为操作列的按钮集合
注意要设置Kind为Glyph 才会显示自己设置的图标,Caption要设置,用此属性控制调用的是那个控件
要设置属性ColumnEdit下的 TextEditStyle 为HideTextEditor 才会显示图标,要不只显示文字
-
7 某一列要显示事件格式 yyyy-MM-dd HHⓂ️ss
设置列的ColumnEdit为TextEdit
-
8 gridcontrol操作
要注意 datasource是赋值给gridcontrol的 -
9 常用事件 CustomColumnDisplayText
重写展示的列值 例如 数据库返回enabled=1 ,用此事件重写 enabled=1时展示是
//TPCAT转换
if (e.Column.FieldName == "TPCAT")
{
if (e.Value != null && !string.IsNullOrEmpty(e.Value.ToString()))
//e.Value
{
DataRow[] rows = dtZTLB.Select("TPCAT='" + e.Value.ToString() + "'");
if (rows != null && rows.Count() > 0)
{
e.DisplayText = rows[0]["TPCATNAME"].ToString();
}
//if(e.Value.ToString()=="1"){
// e.DisplayText ="是";
//}
}
else
e.DisplayText = "";
}
- 10 获取选中行数据
var index = maingridview.GetFocusedDataSourceRowIndex();//获取数据行的索引值,从0开始
string PK_ID = maingridview.GetRowCellValue(index, "表格绑定的列").ToString();//获取选中行的那个单元格的值
- 11 获取表格checkbox选中的数据
int[] rows = this.maingridview.GetSelectedRows();
//循环获取选中的key
for (int i = 0; i < rows.Length; i++)
{
PK_IDS += "'" + this.maingridview.GetRowCellValue(this.maingridview.GetSelectedRows()[i],
maingridview.Columns[PAGEKEY]).ToString() + "',";
//this.maingridview.GetRowCellValue(this.maingridview.GetSelectedRows()[i],
"表格的列绑定的字段").ToString() + "',";
}