1、GridControl赋值:this.GridControl1.DataSouce=dt;

2、GridContro总合计及分组合计:

常规总合计直接RunDesigner-Group Summary Items

DisplayFormat 设置显示格式如:{0:P}表示显示为百分号模式。如数据源中为0.5。表示出来为50%

FieldName 设置显示的对应列

ShowInGroupColumnFooter 在那一列下面显示

SummaryType 合计方式。选择Custom表示自定义。CustomSummaryCalculate事件可处理

//Footer行自定义列合计
GridView view = sender as GridView;
if (e.Item == view.Columns["RateZk"].SummaryItem)
{
decimal x = Convert.ToDecimal(view.Columns["RetailFAmount"].SummaryItem.SummaryValue);
decimal y = Convert.ToDecimal(view.Columns["RetailAmount"].SummaryItem.SummaryValue);
view.Columns["RateZk"].SummaryItem.DisplayFormat = "{0:P}";
if (y != 0)
e.TotalValue = x / y;
else
e.TotalValue = 0;
}
//分组行自定义合计列
if (e.IsGroupSummary)
{
Hashtable ht = view.GetGroupSummaryValues(e.GroupRowHandle); foreach (DictionaryEntry entry in ht)
{
GridGroupSummaryItem sumItem = entry.Key as GridGroupSummaryItem;
if (sumItem.FieldName.Equals("RetailFAmount"))
retailFAmount = Convert.ToDecimal(entry.Value);
}
if (e.Item.ToString().Contains(view.Columns["RateZk"].SummaryItem.FieldName))
e.TotalValue = retailFAmount

3、GridContro导出Excel操作:

SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Title = "导出Excel";
saveFileDialog.Filter = "Excel文件(*.xls)|*.xls";
DialogResult dialogResult = saveFileDialog.ShowDialog(this);
if (dialogResult == DialogResult.OK)
{
this.gvbrowse.OptionsPrint.AutoWidth = false; //设置导出的Excel自动调整列宽,列宽和控件的列宽一致
this.gcbrowse.ExportToXls(saveFileDialog.FileName);
//this.gcbrowse.ExportToXlsOld(saveFileDialog.FileName);//这个方法默认会自动调整列宽,但是office10以上版本有的会报错
DevExpress.XtraEditors.XtraMessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.gvbrowse.OptionsPrint.AutoWidth = true;
}

4、GridControl列要显示百分号:

Run Designer-Columns列 FormatType="Numeric" FormatString="p"

5、gridView1.OptionsView.ShowGroupPanel = false; 不显示分组面板

6、gridView1.OptionsBehavior.Editable=false; 数据只读

7、设置列时间格式:Formatstring="yyyy-MM-dd HH:ss:mm"; FormatType="Numeric";

设置列数字格式:Formatstring="N2";(数据格式:F表浮点,N表整数,数字表示保留几位小数。N2等同于F2)

具体设置参见输入控件的属性的Mask属性

9、将所有组展开代码:gridView1.ExpandAllGroups();

10、自动调整所有字段宽度  this.gridView1.BestFitColumns();

调整某列字段宽度  this.gridView1.Columns[n].BestFit();

11、显示滚动条:gridView1.OptionsView.ColumnAutoWidth属性是true,即各列的宽度自动调整,你把它设成false,就会出现了。

12、选择某行后获取当前表格数据  this.textBox1.Text = gridView2.GetDataRow(e.RowHandle)["列名"].ToString();

13、设置奇、偶行交替颜色

  • OptionsView.EnableAppearanceEvenRow = true;OptionsView.EnableAppearanceOddRow = true;

  • 设置Appearance.EvenRow.BackColor和Appearance.OddRow.BackColor

14、根据绑定的数据源自动产生列  gridView1.PopulateColumns();

15、设定选中一行 Grivview->OptionsBehavior->EditorShowMode 设置为:Click

16、出现GridControl加入选择列后,获取选中值出错的情况。加入如下代码。

gvresult.EndInit();gvresult.CloseEditor(); gvresult.UpdateCurrentRow()

17、设定GridControl只读。选择的列可复制。单独设置GridControl列ReadOnly=true

18、设定GridView自动查询列 gridView1.OptionsView.ShowAtuoFilterRow=true

19、判断选中行:if (!gvbrowse.IsValidRowHandle(gvbrowse.FocusedRowHandle)) return;

string x=(gvbrowse.GetDataRow(gvbrowse.FocusedRowHandle)["CID"]).ToString();

20、GridControl加入的checkbox要点很多次才能选中。在控件里找到OptionsBehavior下面的EditorShowMode属性设置成MouseDown  

21、获取GridControl筛选后的数据。

第一种情况: 
DataView dv = this.gridView1.DataSource as DataView; DataTable dt= dv.Table; DataRow[] rows= dt.Select(this.gridView1.RowFilter);

第二种情况:

BindingSource dv = this.gvwResult.DataSource as System.Windows.Forms.BindingSource;

DataTable dt = dv.DataSource as DataTable;
DataRow[] filteredRows = dt.Select(this.gvwResult.RowFilter);
注:gridview的属性RowFilter恰好适合DataTable的Select方法。

DevExpress GridControl 部分用法的更多相关文章

  1. DevExpress GridControl使用方法

    一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 (1).gridView.AddN ...

  2. 实现DevExpress GridControl 只有鼠标双击后才进行修改数据

    1. 实现DevExpress GridControl 只有鼠标双击后才进行修改数据:修改GridView.OptionsBehavior.EditorShowMode属性为Click 2. 实现De ...

  3. DevExpress GridControl 使用方法技巧 总结 收录整理

    一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 ().gridView.AddNe ...

  4. DevExpress GridControl使用(转)

    DevExpress GridControl使用 (一)原汁原味的表格展示 Dev控件中的表格控件GridControl控件非常强大.不过,一些细枝末节的地方有时候用起来不好找挺讨厌的.使用过程中,多 ...

  5. Devexpress GridControl z

    http://minmin86121.blog.163.com/blog/static/4968115720144194923578/ 1 AllowNullInput=False; --Devexp ...

  6. DevExpress GridControl 单元格添加进度条(ProgressBar)

    首先可以使用DevExpress GridControl 自带的进度条控件. 但是我要用一个方法来设置所以的单元格进度,而不是每个单元格都要设置一遍,同时我想要根据进度值不同,进度条显示不同的颜色. ...

  7. DevExpress GridControl+UserControl实现分页

    志向不过是记忆的奴隶,生气勃勃地降生,但却很难成长. —— 莎士比亚 时隔一年,我写随笔真的很随意,想起了就来博客园写写,想不起来就任由懒惰支配着我.不过我到觉得这不是什么坏事,你不用为了完成某事而让 ...

  8. DevExpress GridControl 显示外部图片

    如果数据源中只包含图片的链接,如何在DevExpress GridControl的一列中显示外部图片? 要实现该功能,可通过非绑定列的方式来实现.具体实现方法如下: 1.    创建了一个非绑定列并设 ...

  9. DevExpress GridControl如何取消默认的显示方式

    DevExpress GridControl如何取消默认的显示方式,就是表格中好像还嵌套了一个表格,下面有个折叠‘+’按钮,我需要显示的是就是单表格的样式效果. 默认的样式如图: 我需要显示的效果图: ...

随机推荐

  1. namespace用法

    1.在WCF.Controller中定义了一个UserModel,标记为① 2.在WCF.Controller.Model中定义了一个UserModel(同上,namespace不同),标记为② 3. ...

  2. css required,focus,valid和invalid介绍

    本文章来给大家介绍在css3定义required,focus,valid和invalid样式的方法,此方法目前只支持ie9+及ff,gg浏览器哦.css3 提示只适用于高级浏览器:ChromeFire ...

  3. MFC编译程序,缺少MFC动态链接库的解决

    MFC编译程序,缺少MFC动态链接库的解决 问题:VS2010 c++编写的程序在别人的机子运行不了,缺少mfc100u.dll xxx100d.dll等的解决方法 解决方法: 1.将这些dll打包, ...

  4. Fegla and the Bed Bugs 二分

    Fegla and the Bed Bugs Fegla, also known as mmaw, is coaching a lot of teams. All these teams train ...

  5. HRBUST1530

    链接 http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1530 这个是典型的二分题,题 ...

  6. Win8系统 Python安装 - 入门

    原文:http://www.blogbus.com/hx1987-logs/271955446.html 安装python (1)下载python安装包,下载网站https://www.python. ...

  7. telnet登录路由器启动服务的shell脚本

    因为在测试中经常要telnet登录到路由器中去配置环境启动路由器,每次都输入一遍命令太麻烦了,想着写一个shell脚本实现自动登录.配置环境.启动服务的过程. 脚本实现是使用expect来实现的,所以 ...

  8. Flash图表控件FusionCharts自定义图表y轴最大/最小值

    自定义图表y轴的最大值和最小值 用户可以使用FusionCharts图表中<chart>元素的yAxisMaxValue和yAxisMinValue属性设置图表限制. 示例: <ch ...

  9. 洛谷P1930 亚瑟王的宫殿 Camelot

    P1930 亚瑟王的宫殿 Camelot 19通过 53提交 题目提供者JOHNKRAM 标签USACO 难度提高+/省选- 提交  讨论  题解 最新讨论 暂时没有讨论 题目描述 很久以前,亚瑟王和 ...

  10. 关于oracle中传过来的一个多id需要插入到数据库用,分格的存储过程

    create or replace procedure test ( jf_Id in nvarchar2, yf_id in nvarchar2 ) as v_length NUMBER := LE ...