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 ...
随机推荐
- java基础—抽象类介绍
一.抽象类介绍
- Java中如果把构造方法也私有化,如何创建对象?Java的单例设计模式——饿汉式和懒汉式区别
Java的单例模式——饿汉式 package com.swift; //Java单例设计模式——恶汉式 public class SinglePerson { private String name= ...
- 【Machine Learning is Fun!】1.The world’s easiest introduction to Machine Learning
Bigger update: The content of this article is now available as a full-length video course that walks ...
- skimage学习(一)
skimage即是Scikit-Image.基于python脚本语言开发的数字图片处理包 skimage包由许多的子模块组成,各个子模块提供不同的功能.主要子模块列表如下: data子模块学习 导入d ...
- AES加密、解密工具类
AES加密.解密工具类代码如下: package com.util; import java.io.IOException; import java.io.UnsupportedEncodingExc ...
- CentOS7 安装操作命令
#timedatectl set-timezone Asia/Shanghai 关闭SELinux vi /etc/sysconfig/selinux #SELINUX=enforcing SELIN ...
- 初学Python01
1.文本编辑器区别于交互模式的Python,它可以保存Python代码文件,再次打开还是存在.文件保存时要注意是.py的模式. 2.Windows系统下,应使用命令行模式打开.py 首先进入文件所在磁 ...
- POJ:2109-Power of Cryptography(关于double的误差)
Power of Cryptography Time Limit: 1000MS Memory Limit: 30000K Description Current work in cryptograp ...
- 数学基础:HDU2802-F(N)(寻找循环节)
F(N) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submissi ...
- centos7 bond 和 网桥配置
rhel7系统bond配置(更新版本):https://www.cnblogs.com/zhangjianghua/p/9119808.html Bonding的模式一共有7种: 1.mode=0(b ...