• DevExpress 2.0 GridControl 使用方法


    关于GridControl的几点介绍
    1.     它的功能类似与 Visual Studio .NET 2003自带的 DataGrid ,用于数据的客户端展示。开发者可以领用程序控制进行分页现实,分页方法在此不予介绍了。
    2.     它与DataGrid的不同就在于其功能的非常强大,可以直接设计报表并可导出为Excel,Txt,Hmtl 格式。免去了再用其他控件设计报表的烦杂。

    常用的几个对象
    private DevExpress.XtraGrid.GridControl gridControl1;//整个数据容器
    private DevExpress.XtraGrid.Views.BandedGrid.BandedGridView bandedGridView1;//显示容器
    private DevExpress.XtraGrid.Views.BandedGrid.GridBand gridBand1;//用于设计表头
    private DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn bandedGridColumn1;//用于数据项
    之间的关系如下
    gridControl1 包含 GridView ,BandedGridView,CarView 以及 AdvBandedGridView,其中bandedGridView又包含 GridBand 和 BandedGridColumn,下面本文以bandedGridView 为列作一使用介绍.

    设计样图

    步骤一:
    将控件拖至设计窗体中,点击 Click here to change view 转换默认gridView为bandedGridView 样式,因为此样式可以给数据设计表头。
    步骤二:
    点击 Run Designer 进入设计界面入下图


    步骤三:
    图中 1 框选的按钮功能为添加 数据项bandedGridColumn1 ,根据字段的多少进行添加,
    每个字段对应一个数据项。
    步骤四:图中 3框选的按钮功能为添加 表头gridBand1,根据需要的数据进行添加。
    步骤五:
    添加完数据项和表头就需要进行样式设计,即图中2框选的按钮功能。可以自由的进行表头拖动合并,仅需鼠标即可完成,十分方便快捷。如果在字段数量较大的情况,建议使用程序进行控制,因为过多的字段在有限的屏幕中很难控制。
    设计过程中gridBand1的放置在表头最底层上bandedGridColumn进行一一对应。为了不显示bandedGridColumn名称,可将属性中的Caption 设置为空字符即一个空格。

    代码控制片段
    oracleConnection conn = null;
                 oracleCommand command = null;
                 try
                 {
                     conn = DBConnection.GetConnection();
                     command = new oracleCommand(m_query_elqc_sql,conn);
                     oracleDataAdapter oraAdapter = new oracleDataAdapter(command);
                     DataSet ds = new DataSet();
                     oraAdapter.Fill(ds);
                    
                     if(ds.Tables.Count < 1 ) return ;

                     DataTable dt = ds.Tables[0];
                     gridControl1.DataSource = dt;
                     //绑定数据
                     gridColumn1.FieldName = dt.Columns[0].ColumnName;
                     gridColumn2.FieldName = dt.Columns[1].ColumnName;
                     gridColumn3.FieldName = dt.Columns[2].ColumnName;
                     gridColumn4.FieldName = dt.Columns[3].ColumnName;
                     gridColumn5.FieldName = dt.Columns[4].ColumnName;
                     gridColumn6.FieldName = dt.Columns[5].ColumnName;
                     gridColumn7.FieldName = dt.Columns[6].ColumnName;
                     gridColumn8.FieldName = dt.Columns[7].ColumnName;
                     gridColumn9.FieldName = dt.Columns[8].ColumnName;
                     gridColumn10.FieldName = dt.Columns[9].ColumnName;
                     gridColumn11.FieldName = dt.Columns[10].ColumnName;
                     gridColumn12.FieldName = dt.Columns[11].ColumnName;
                     gridColumn13.FieldName = dt.Columns[12].ColumnName;
                 }
                 finally
                 {
                     conn.Close();
    }
    如果需要通过代码进行表头和数据项的设计,可参阅“Windows 窗体设计器生成的代码”中自动生成的方法.
    导出报表
    仅需如下一步即可完成
    this.gridControl1.ExportToExcel(m_savefilename);

    存在的不足
    1 字段过多不易显示
    2 导出报表后字体的样式和表头的背景颜色丢失
  • 相关阅读:
    Git查询
    HDU-3038 How Many Answers Are Wrong 并查集
    CodeForcesEducationalRound40-D Fight Against Traffic 最短路
    HDU-6109 数据分割 并查集(维护根节点)
    ZOJ-3261 Connections in Galaxy War 并查集 离线操作
    AtCoderBeginner091-C 2D Plane 2N Points 模拟问题
    HDU-1878 欧拉回路 欧拉回路
    [笔记-图论]Floyd
    [笔记-图论]Bellman-Ford
    [笔记-图论]Dijkstra
  • 原文地址:https://www.cnblogs.com/bingyun84/p/1683536.html
Copyright © 2020-2023  润新知