1、去除 GridView 头上的 "Drag a column header here to group by that column"

-->  点击 Run Designer  -> 找到:OptionView ->  将 ShowGroupPanel : 设置为 false ;

2、如何显示出 GridView 自带的搜索功能

-->  点击 Run Designer  ->  找到: OptionsFind -> 将AlwaysVisible : 设置为 True

3、如何将GridView的大小自适应窗体的大小

-->  右键 GridView 控件  -> 属性  ->  找到 Dock : 设置为 Fill

4、当GridView数据源发生变化时,如何更改GridView所"绑定的值"

Code注:其实就是重新创建了一个GridView的实例。

1
2
3
4
5
1  gridView1 = new DevExpress.XtraGrid.Views.Grid.GridView(gridControl1);
2  gridControl1.MainView = gridView1;
3  gridView1.OptionsView.ShowGroupPanel = false;
4  gridView1.OptionsFind.AlwaysVisible = true;
5  gridControl1.DataSource = dt;

5、在GridControl 中添加checkbox复选框

--> gridView -> run designer -> columns -> 添加一列(如果没有的话) 然后如图设置-- >  另外当我们需要动态绑定grid数据时,DataTable 中列的名字要和我们在gridview中设置的FileName名字要移植,不然数据是显示不出来的。

6、让GridView 行 不可编辑

-- > Run Designer -> OptionsBehavior -> Editable :  False

7 、在GridView 行中添加Button按钮

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public void ButtonInitial()
        {
            RepositoryItemButtonEdit rib = new RepositoryItemButtonEdit();
            rib.TextEditStyle = TextEditStyles.HideTextEditor;
            rib.Buttons[0].Kind = ButtonPredefines.Glyph;
            rib.ButtonClick += rib_ButtonClick;
            rib.Buttons[0].Caption = "详细信息";
            rib.Buttons[0].Visible = true;
            gridView1.Columns["DOWNSTATE"].ColumnEdit = rib;
 
        }
 
        void rib_ButtonClick(object sender, ButtonPressedEventArgs e)
        {
            int rowindex = gridView1.FocusedRowHandle;
            DataRow row = gridView1.GetDataRow(rowindex);
        }

8 、GirdView行添加Button按钮之后,触发事件不可用.

将GridView Editable 设置为True 让GridView可编辑,如果不想让它可编辑的话,在一列一列的进行设置.原因是:将GridView设置为不可编辑之后,那么鼠标点击Button那一列只是选中而已,不会进行触发事件.

9 、GridView 设置选中行的颜色

GridView : Run Designer ->  Appearences : selectRow & FocusedRow (两项都要设置)

BackColor :  MediumSlateBlue  背景色

 ForeColor :  White    前景色 字体颜色

10 、GridView 设置标题行颜色

GridView : Run Designer -> Appearences : HeadPanel  在这个属性组中都是关于标题行的设置,再次不做诠释.

当设置完HeadPanel 其实并没有结束,是不显示效果的, 还需要设置 GridControl 属性中 LookAndFeel : Style 设置为ultraFlat , UseDefaultLookAndFeel  设置为 False .

11 、GridView 设置标题行以及内容行 数据居中

标题行 10 所述 在HeadPanel 里有一个TextOptions  展开之后 将HAlignment :  Center

如果是将内容行数据居中.有两种方法 1 : 逐行设置  2 : 设置Appearences

1 : GridView -> Run Designer -> Columns  -> AppearanceCell ->  TextOptions 找到HAlignment :  Center .

2 : GridView -> Run Designer -> Appearance ->  ViewCaption -> TextOptions -> HAlignment : Center

12 、GridView添加CheckBox并支持多选操作.

GridView : Run Designer ->  OptionsSelection -> MultiSelect : True    MultiSelectMode : CheckBoxRowSelect

13 、GridView 添加序号列

GridView : Run Designer ->  Event  -> CustomDrawRowIndicator

在事件中添加代码 :

1
2
3
4
5
6
7
8
9
10
11
12
13
e.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
            if (e.Info.IsRowIndicator)
            {
                if (e.RowHandle >= 0)
                {
                    e.Info.DisplayText = (e.RowHandle + 1).ToString();
                }
                else if (e.RowHandle < 0 && e.RowHandle > -1000)
                {
                    e.Info.Appearance.BackColor = System.Drawing.Color.AntiqueWhite;
                    e.Info.DisplayText = "G" + e.RowHandle.ToString();
                }
            }

另外在 Run Desginer ->  IndicatorWidth  设置序号列的宽度 一般30左右就比较适合一些了.

14 、单元格双击响应 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private void gridControl1_DoubleClick(object sender, EventArgs e)
        {
            MouseEventArgs arg = e as MouseEventArgs;
            if (arg == null)
                return;
 
            GridHitInfo hitInfo = gridView1.CalcHitInfo(new Point(arg.X, arg.Y));//获取坐标点
            if (hitInfo.RowHandle >= 0)
            {
                DataRow row = gridView1.GetDataRow(hitInfo.RowHandle);
                _list.Clear();
                _list.Add(row[0].ToString());
                gisResoureMonControl1.SetSelectResource(_list);
            }          
        }

15 、获取选中行的值

代码:

1
2
3
4
5
6
7
private void gridData_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
        {
             _id = GWEntLib.Utilities.Mix.ConvertUtils.ToInt32(gridData.GetRowCellValu(e.FocusedRowHandle, "Id"));
             _emrFileReadList = EMRTemplateFileReadList.GetEMRTemplateFileReadList(_id);
            gridVersonData.DataSource = _emrFileReadList;
          
        }

响应事件:FocusedRowChanged
获取字段值:gridData.GetRowCellValue(e.FocusedRowHandle, "Id")
注意:FocusedRowChanged是Gridview的事件而不是gridControl的事件
gridControl与Gridview的区别:前者是容器,后者为视图

16、将GridView 列表表头固定,无Filter效果

 17、DevExpress GridView 获取当前选中行的值。

1
2
3
1  int rowIndex = gridView1.FocusedRowHandle;
2  DataRow dr = gridView1.GetDataRow(rowIndex);
3  MessageBox.Show("课件 \"" + dr.ItemArray[0].ToString() + "\" 下载成功");

出处http://www.cnblogs.com/Albin/

devexpress 经验笔记的更多相关文章

  1. DevExpress使用笔记

    DevExpress这套控件用了也有几年的时间了,现在用的版本是14.2.2. 确实是很强大的一套控件,用的好,做出的效果也是相当的好,记录一些平常用到的代码,就当记笔记吧,慢慢完善,其实网上也有大把 ...

  2. [置顶] 单片机C语言易错知识点经验笔记

    今天写这一篇文章并不是因为已经想好了一篇文章才写下来,而是我要将这一篇文章作为一个长期的笔记来写,我会一直更新.在进行单片机开发时,经常都会出现一些很不起眼的问题,这些问题其实都是很基础的c语言知识点 ...

  3. DevExpress学习笔记之如何获取Repository Item的值

    上一章我们看到了如何在TreeList的单元格中动态绑定不同的控件,此类控件被称为In_Place Control.所谓“In_Place”,我的理解为“内置”控件,既然有“内”就相对的会有“外”,其 ...

  4. Note | 常用指令,工具,教程和经验笔记

    目录 图像处理 机器学习和数学 编程环境和工具 写作工具 其他 图像处理 获取图像频域并分解为高低频:https://www.cnblogs.com/RyanXing/p/11630493.html ...

  5. Xcode编程环境经验笔记(持续汇总)

    1.工程路径设置(Search Paths) Header Search Paths:$(SRCROOT)/include Library Search Paths:$(SRCROOT)/lib $( ...

  6. DevExpress学习笔记1-ProductsDemo.Win

    最近在学习ProductsDemo.Win,有一些体会记录下来,大家分享: 在Contacts模块: 在Private Sub UpdateCurrentContact()过程添加一句:InitInd ...

  7. Flex 经验笔记二

    向 Module 传递数据:好像只能传递些像 整型,字符型等简单类型的数据,也能传递像 json 这样的 Object 对象,但如果 Object 对象是从层的,其子级数据,好像也读取不到. func ...

  8. Flex 经验笔记一

    Module页面嵌套子Module页面直接用标签嵌入是不行的,无法显示出来,需要用到 ModuleManager 使用ModuleInfo 的 addEventListener 判断当子Module ...

  9. Unity3d代码从Android/IOS迁移到WindowsPhone经验笔记

    [1搭建坏境] 推荐:Windows 8.1 Enterprise + Visual studio 2013(完整安装) PS: 假设要Visual Studio 2012,先安装VS再安装WP8/W ...

随机推荐

  1. [BZOJ1984]月下“毛景树”解题报告|树链剖分

    Description 毛毛虫经过及时的变形,最终逃过的一劫,离开了菜妈的菜园. 毛毛虫经过千山万水,历尽千辛万苦,最后来到了小小的绍兴一中的校园里.爬啊爬~爬啊爬~~毛毛虫爬到了一颗小小的“毛景树” ...

  2. [POJ2954&POJ1265]皮克定理的应用两例

    皮克定理: 在一个多边形中.用I表示多边形内部的点数,E来表示多边形边上的点数,S表示多边形的面积. 满足:S:=I+E/2-1; 解决这一类题可能运用到的: 求E,一条边(x1,y1,x2,y2)上 ...

  3. swift xcode设置 ,代码折叠,全局折叠 快捷键

    在preference text editing 里面打开 function 折叠的项, 折叠方法快捷键: option+command +left/right 全局折叠快捷键: shift+opti ...

  4. [bzoj4034][HAOI2015]树上操作——树状数组+dfs序

    Brief Description 您需要设计一种数据结构支持以下操作: 把某个节点 x 的点权增加 a . 把某个节点 x 为根的子树中所有点的点权都增加 a . 询问某个节点 x 到根的路径中所有 ...

  5. bzoj 1798 维护序列seq 线段树

    裸的线段树,注意标签下放就行了 多么痛的领悟,一定要开int64 /************************************************************** Pro ...

  6. 转:Android 的一些比较好的开源代码项目

    转自:http://blog.csdn.net/zengyangtech/article/details/7019439 Android PDF 阅读器 http://sourceforge.net/ ...

  7. 利用git把本地项目传到github+将github中已有项目从本地上传更新

    利用git把本地项目传到github中 1.打开git bash命令行,进入到要上传的项目中,比如Spring项目,在此目录下执行git init 的命令,会发下在当前目录中多了一个.git的文件夹( ...

  8. 【SQL】事务

    1.事务的开始结束: START TRANSACTION :标记事务开始 COMMIT :标记事务成功结束 ROLLBACK :标记事务夭折 2.设定事务只读.读写性质: SET TRANSACTIO ...

  9. 《Java编程思想》笔记 第五章 初始化与清理

    1.构造器 因为创建一个类的对象构造器就会自动执行,故初始化某些东西特好 2.方法重载 方法名相同,参数列表不同. 2.1 区分重载方法 方法重载后区别不同方法的就是方法签名 -->参数类型和个 ...

  10. KDJ金叉测试

    # -*- coding: utf-8 -*- import os import pandas as pd # ========== 遍历数据文件夹中所有股票文件的文件名,得到股票代码列表stock_ ...