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 ...
随机推荐
- 通过源码编译安装VIM
开发中使用的是Ubuntu 12.04 LTS,通过sudo apt-get install vim安装的版本较低,不支持YCM,所以,用源码编译并安装最新的Vim. 卸载旧版本的Vim: sudo ...
- java做http接口
问题描述 我要对外提供一个http接口给别人调用...但是我不知道用java怎么做这个接口.请大家详细给我讲讲.从开发到如何发布到服务器.谢谢了 解决方案 如果你这个很简单的话,而且数量也很少,建议直 ...
- manjaro linux没有ll等命令的解决办法
编辑~/.bashrc, 添加alias 如下 vim ~/.bashrc设置别名. 添加如下行 alias ll='ls -alF' alias la='ls -A' alias vi='vim' ...
- poj 3614 奶牛美容问题 优先队列
题意:每头奶牛需要涂抹防晒霜,其中有效的范围 min~max ,现在有L种防晒霜,每种防晒霜的指数为 f 瓶数为 l,问多少只奶牛可以涂上合适的防晒霜?思路: 优先队列+贪心 当奶牛的 min< ...
- 《小团团团队》第八次团队作业:Alpha冲刺
项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 实验十二 团队作业8:软件测试与Alpha冲刺 团队名称 小团团团队 作业学习目标 (1)掌握软件测试基础技术; (2)学 ...
- Freemarker的循环通过assign指令引入计数变量
这里是一个jeecms框架的前台的一个内容列表集,因为不是每个内容子项符合要求,而且需要统计符合要求的子项个数,仿照java的for循环,需要在循环前声明一个计数变量,这就需要使用Freemaker的 ...
- 并查集 - BZOJ 1104 [POI2007]洪水
BZOJ 1104 [POI2007]洪水 描述 AKD 市处在一个四面环山的谷地里.最近一场大暴雨引发了洪水,AKD 市全被水淹没了.Blue Mary,AKD 市的市长,召集了他的所有顾问(包括你 ...
- Java学习笔记3---unable to launch
环境配置好后,在eclipse下编写HelloWorld程序: ①创建新工程 ②创建.java文件,命名为HelloWorld ③在源文件中添加main方法,代码如下: public void mai ...
- Selenium WebDriver-操作页面下拉列表
#encoding=utf-8 import unittest import time import chardet from selenium import webdriver class Visi ...
- 大数据学习——spark笔记
变量的定义 val a: Int = 1 var b = 2 方法和函数 区别:函数可以作为参数传递给方法 方法: def test(arg: Int): Int=>Int ={ 方法体 } v ...