DevExpress GridControl 控件点滴
一、常用控件样式
public void setDgv(DevExpress.XtraGrid.Views.Grid.GridView gridView1)
{
gridView1.OptionsView.ShowColumnHeaders = true; //显示列标题
gridView1.OptionsView.ShowIndicator = false; // 不显示行标题
gridView1.OptionsView.ShowGroupPanel = true; // 显示分组panel
gridView1.OptionsCustomization.AllowGroup = true; //是否允许分组
gridView1.OptionsView.ShowGroupedColumns = true; //显示分组的列
gridView1.OptionsView.ShowFilterPanelMode = DevExpress.XtraGrid.Views.Base.ShowFilterPanelMode.Never; //是否显示过滤面板
gridView1.OptionsCustomization.AllowFilter = true; //是否允许过滤 gridView1.OptionsCustomization.AllowColumnMoving = true; //是否允许移动列
gridView1.OptionsCustomization.AllowColumnResizing = false; //是否允许调整列宽
gridView1.OptionsCustomization.AllowSort = true; //是否允许排序
gridView1.OptionsSelection.EnableAppearanceFocusedCell = false; //是否允许选中单元格
gridView1.OptionsBehavior.EditorShowMode = DevExpress.Utils.EditorShowMode.Click;
gridView1.OptionsBehavior.Editable = false; //是否允许用户编辑单元格
gridView1.OptionsView.EnableAppearanceEvenRow = true; //是否启用偶数行外观
gridView1.OptionsView.EnableAppearanceOddRow = true; //是否启用奇数行外观
gridView1.OptionsMenu.EnableColumnMenu = false; //禁用列标题右键菜单 // gridView1.ClearSorting();//禁止排序
gridView1.PaintStyleName = "Flat"; //设置外观样式
DevExpress.XtraGrid.Views.Grid.GridViewAppearances Appearance1 = new DevExpress.XtraGrid.Views.Grid.GridViewAppearances(gridView1); //列标题颜色:System.Drawing.Color.FromArgb(((int)(((byte)(198)))), ((int)(((byte)(232)))), ((int)(((byte)(243)))));
//奇数行
Appearance1.EvenRow.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)()))), ((int)(((byte)()))), ((int)(((byte)()))));
Appearance1.EvenRow.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)()));
//偶数行
Appearance1.OddRow.BackColor = System.Drawing.Color.White;
Appearance1.OddRow.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)()));
//选中行
Appearance1.FocusedRow.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)()))), ((int)(((byte)()))), ((int)(((byte)()))));
Appearance1.FocusedRow.ForeColor = System.Drawing.Color.Black;
//分组panel颜色
Appearance1.GroupPanel.BackColor = System.Drawing.Color.White;
Appearance1.GroupPanel.BackColor2 = System.Drawing.Color.CornflowerBlue;
//分组row颜色
Appearance1.GroupRow.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)()))), ((int)(((byte)()))), ((int)(((byte)()))));
Appearance1.GroupRow.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)()))), ((int)(((byte)()))), ((int)(((byte)()))));
//空白区域颜色
Appearance1.Empty.BackColor = System.Drawing.Color.LightYellow;
//列标题颜色
Appearance1.HeaderPanel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)()))), ((int)(((byte)()))), ((int)(((byte)()))));
//奇数行
gridView1.Appearance.EvenRow.BackColor = Appearance1.EvenRow.BackColor;
gridView1.Appearance.EvenRow.Font = Appearance1.EvenRow.Font;
//偶数行
gridView1.Appearance.OddRow.BackColor = Appearance1.OddRow.BackColor;
gridView1.Appearance.OddRow.Font = Appearance1.OddRow.Font;
//选中行
gridView1.Appearance.FocusedRow.BackColor = Appearance1.FocusedRow.BackColor; //选中的行
gridView1.Appearance.FocusedCell.BackColor = Appearance1.FocusedRow.BackColor; //选中的单元格
gridView1.Appearance.FocusedRow.ForeColor = Appearance1.FocusedRow.ForeColor; //字体颜色
gridView1.Appearance.GroupPanel.BackColor = Appearance1.GroupPanel.BackColor;
gridView1.Appearance.GroupPanel.BackColor2 = Appearance1.GroupPanel.BackColor2;
//分组row颜色
gridView1.Appearance.GroupRow.BackColor = Appearance1.GroupRow.BackColor;
// gridView1.Appearance.GroupRow.BackColor2 = Appearance1.GroupRow.BackColor2;
//空白区域颜色
gridView1.Appearance.Empty.BackColor = Appearance1.Empty.BackColor;
//列标题颜色
gridView1.Appearance.HeaderPanel.BackColor = Appearance1.HeaderPanel.BackColor;
//设置分组
gridView1.GroupSummary.Add(DevExpress.Data.SummaryItemType.Count, "分组1"); //添加分组1,如果不是count,则名称必须与字段名对应
gridView1.GroupFormat = "{1} {2}"; //默认"{0}: [#image]{1} {2}"; 字段名称:数据 计数=?
gridView1.Columns["部门名称"].GroupIndex = ; //设置默认分组列
}
二、设置分组显示格式
gridView1.GroupFormat = "{0}: [#image]{1} {2}"; //"字段名:图标 字段值";
gridView1.GroupFormat = "{1} {2}"; //"字段值";
三、统计汇总字段
gridView1.GroupSummary.Add(DevExpress.Data.SummaryItemType.Count, "分组1"); //添加分组1,如果不是count,则名称必须与字段名对应
gridView1.GroupFormat = "{1} {2}"; //默认"{0}: [#image]{1} {2}"; 字段名称:数据 计数=?
gridView1.Columns["FieldName1"].GroupIndex = ; //设置默认分组列 //分组列格式
gridView1.GroupSummary.Add(DevExpress.Data.SummaryItemType.Average, "id", gridView1.Columns["id"]);
gridView1.GroupSummary[].DisplayFormat = "AVG={0:c}"; gridView1.GroupSummary.Add(DevExpress.Data.SummaryItemType.Count, "姓名", gridView1.Columns["姓名"]);
((DevExpress.XtraGrid.GridSummaryItem)gridView1.GroupSummary[gridView1.GroupSummary.Count - ]).DisplayFormat = "小计:{0:N0}";
//展开
gridView1.ExpandAllGroups();
四、对列的操作
//设某一列只读或者不可编辑
gridView1.Columns[].OptionsColumn.AllowEdit = false;
gridView1.Columns[].OptionsColumn.ReadOnly = false; //设某一列文字和标题局中显示
gridView1.Columns[].AppearanceHeader.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
gridView1.Columns[].AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; //去掉某一列上面的自动筛选功能(Filter)
gridView1.Columns[].OptionsFilter.AllowAutoFilter = false;
gridView1.Columns[].OptionsFilter.AllowFilter = false;
gridView1.Columns[].OptionsFilter.ImmediateUpdateAutoFilter = false; //设置冻结列(左冻结)
gridView1.Columns[].Fixed= DevExpress.XtraGrid.Columns.FixedStyle.Left; //得到单元格数据(0行0列)
string ss = gridView1.GetRowCellDisplayText(, gridView1.Columns[]);
string ss = gridView1.GetRowCellValue(, gridView1.Columns[]);
//设置单元格数据(将0行0列的单元格赋值123)
gridView1.SetRowCellValue(, gridView1.Columns[], ""); //手动添加dev的列
DevExpress.XtraGrid.Columns.GridColumn Col1 = new DevExpress.XtraGrid.Columns.GridColumn();
Col1.FieldName="FID";
Col1.Visible=true;
Col1.VisibleIndex=gridView1.Columns.Count;
gridView1.Columns.Add(Col1);
五、一些常用事件
//设置自动增加的行号,需要先添加给gridview添加事件CustomDrawRowIndicator
private void gridview_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e)
{
if (e.Info.IsRowIndicator && e.RowHandle >= )
e.Info.DisplayText = (e.RowHandle + ).ToString();
} //删除: (修改了dgvdel里的datagridviewdel方法)
public static void datagridviewdel_Dev(DevExpress.XtraGrid.Views.Grid.GridView Mydgv)
{
if (MessageBox.Show("你确定要删除选中的记录吗?", "删除提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2, , false) == DialogResult.Yes)
{
int iSelectRowCount = Mydgv.SelectedRowsCount;
if (iSelectRowCount > )
{
Mydgv.DeleteSelectedRows();
}
}
}
//新增:
private void btn_add_Click(object sender, EventArgs e)
{
gridView1.AddNewRow();
}
//新增行初始值设置:
private void gridView1_InitNewRow(object sender, DevExpress.XtraGrid.Views.Grid.InitNewRowEventArgs e)
{
ColumnView View = sender as ColumnView;
View.SetRowCellValue(e.RowHandle, View.Columns[], gridView1.GetRowCellValue(gridView1.GetRowHandle(gridView1.RowCount - ), gridView1.Columns[])); //复制最后一行的数据到新行
View.SetRowCellValue(e.RowHandle, View.Columns[], gridView1.GetRowCellValue(gridView1.GetRowHandle(gridView1.RowCount - ), gridView1.Columns[])); //复制最后一行的数据到新行
}
//保存 datagridviewsave
六、获取行高
GridViewInfo vi = gridView1.GetViewInfo() as GridViewInfo;
GridRowInfo ri = vi.RowsInfo.FindRow();
int height = ;
if (ri != null)
height = ri.Bounds.Height;
DevExpress GridControl 控件点滴的更多相关文章
- DevExpress GridControl控件行内新增、编辑、删除添加选择框
以下为内容以图片居多1234表示点击顺序 先新增一行 操作和新增数据行一样 打开ColumnEdit 选择new ButtenEdit new上方会出现一个系统命名的button 命名可以更改必须 ...
- DevExpress GridControl控件行内新增、编辑、删除添加选择框(转)
http://blog.csdn.net/m1654399928/article/details/21951519 1.首先到GridControl控件设计里设置属性Repository (In ...
- 设置DevExpress GridControl控件时间列显示时、分、秒样式
如题,如果Dev GridControl控件绑定DataTable数据源时,DataTable中的某一列为Date类型时,GridControl默认显示样式只显示当前日期,并不会将时.分.秒显示出来. ...
- DevExpress gridControl控件动态绑定列 zt
DataTable dt = =Query.GetCustome=(ref customColumnCount); //绑定列 gridView.Columns.Add(}); gridView.Co ...
- DevExpress GridControl 控件二表连动
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- DevExpress控件的GridControl控件小结
DevExpress控件的GridControl控件小结 (由于开始使用DevExpress控件了,所以要点滴的记录一下) 1.DevExpress控件组中的GridControl控件不能使横向滚动条 ...
- DevExpress之GridControl控件小知识
DevExpress之GridControl控件小知识 一.当代码中的DataTable中有建数据关系时,DevExpress 的 GridControl 会自动增加一个子视图 .列名也就是子表的字段 ...
- DevExpress的GridControl控件更新數據問題解決辦法
開發WPF程序時,使用Devexpress的GridControl控件用ItemSource綁定數據,在頁面進行編輯時,當屬性繼承INotifyPropertyChanged接口時會同步更新後臺數據. ...
- 【转】Devexpress使用之:GridControl控件(合并表头)
Devexpress系列控件功能很强大,使用起来也不太容易,我也是边摸索边使用,如果有时间我会把常用控件的使用方法整理出来的. using System; using System.Collectio ...
随机推荐
- 二叉树、二叉搜索树、平衡二叉树、B树、B+树的精确定义和区别探究
概述 关于树的概念很多,B树,B+树,红黑树等等. 但是你去翻翻百度百科,或者用百度或者谷歌搜索一下中文的树结构的介绍,全都是狗屁.没有哪个中文网站是真正精确解释树的定义的,尤其是百度百科. 下面我要 ...
- Bootstrap 下拉菜单(dropdown)插件
使用下拉菜单的插件,您可以向任何组件(比如:导航栏,标签页,胶囊式导航,按钮)添加下拉菜单 用法 您可以切换下拉菜单(dropdown)插件隐藏内容 1.通过data属性,向链接或按钮添加data-t ...
- Java的WatchService文件夹监听遇到的一些问题
打开word文档时会新增一个~$开头的同名文件,关闭时该文件自动删除 修改excel文件时,会新增一个文件名像E56B4610,CBC15610等这样的文件,同时也会产生tmp格式的文件 PPT文件修 ...
- Voyager下的关系模型
关系:一个用户有几件商品,对应User表和Products表 在Products表下添加字段,user_id 打开products下的bread,点击Create Relationship Produ ...
- centos7无法切换startx
centos光盘安装后,显示命令行模式,通过startx无法进入图形界面? 解决方法:1.使用yum grouplist查看,根据显示的结果采用不同的界面格式,我用的是 yum groupinstal ...
- Python基础(三)—— print()格式化输出变量
先举一个简单的例子说明: name = 'Jack' answer = input('你好,%s '%(name) + '你认识 Sean 不, 输入 yes or no\n') print('Sea ...
- python-面试常用 --变量、内存管理(小整数池,引用计数)
执行Python程序的两种方法 第一种:交互式(jupyter就是对这种进行了封装) 优点:直接给出结果 缺点:无法保存 第二种:命令行式,通过Python解释器输入文本(pycharm对这种进行了封 ...
- Python模块(三)(正则,re,模块与包)
1. 正则表达式 匹配字符串 元字符 . 除了换行 \w 数字, 字母, 下划线 \d 数字 \s 空白符 \n 换行符 \t 制表符 \b 单词的边界 \W \D \S 非xxx [ ...
- Codeforces Round #505 D. Recovering BST(区间DP)
首先膜一发网上的题解.大佬们tql. 给你n个单调递增的数字,问是否能够把这些数字重新构成一棵二叉搜索树(BST),且所有的父亲结点和叶子结点之间的gcd > 1? 这个题场上是想暴力试试的.结 ...
- foreach ($users as $key=>$value)
1: foreach(array_name as $value) { statement; } 这里的array_name是你要遍历的数组名,每次循环中,array_name数组的当前元素的值被赋给$ ...