zoukankan      html  css  js  c++  java
  • DevExpress学习之Gridcontrol

    最近学习DevExpress的控件,写了几个方法拿来分享,希望大家能用的上:

    using System;
    using System.Collections;
    using System.Drawing;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Windows.Forms;
    using DevExpress;
    using DevExpress.XtraGrid;
    using DevExpress.XtraGrid.Columns;
    using DevExpress.XtraGrid.Views;
    using DevExpress.XtraGrid.Views.Grid;
    using DevExpress.XtraGrid.Views.Card;
    using DevExpress.XtraGrid.Views.BandedGrid;

    namespace MyDev
    {
        public class DevGridView
        {
            #region Members

            private DevExpress.XtraGrid.GridControl gridControl;

            #endregion

            #region Construct
            /// <summary>
            ///
            /// </summary>
            public DevGridView()
            { }
            #endregion

            #region Perporties

            public GridControl GridControl
            {
                get { return gridControl; }
                set { gridControl = value; }
            }
            #endregion

            #region Methods

            #region 初始化Dev GridView 表头
            /// <summary>
            /// 初始化Dev GridView 表头
            /// </summary>
            /// <param name="gridView"></param>
            /// <param name="gridColumn"></param>
            public static void InitGridViewTitle(GridView gridView, GridColumn[] gridColumn)
            {
                gridView.Columns.AddRange(gridColumn);
            }
            /// <summary>
            /// 初始化Dev GridView 表头
            /// </summary>
            /// <param name="gridView"></param>
            /// <param name="sCaption"></param>
            /// <param name="sFieldName"></param>
            /// <param name="iWidth"></param>
            public static void InitGridViewTitle(GridView gridView, string[] sCaption, string[] sFieldName, int[] iWidth)
            {
                DevExpress.XtraGrid.Columns.GridColumn col = new DevExpress.XtraGrid.Columns.GridColumn();

                for (int i = 0; i < sCaption.Length; i++)
                {
                    col = new DevExpress.XtraGrid.Columns.GridColumn();
                    col.Caption = sCaption[i];
                    col.FieldName = sFieldName[i];
                    col.Name = sFieldName[i];
                    col.Width = iWidth[i];
                    col.VisibleIndex = i;
                    gridView.Columns.Add(col);
                }
            }
            /// <summary>
            /// 初始化Dev GridView 表头
            /// </summary>
            /// <param name="gridView"></param>
            /// <param name="sCaption"></param>
            /// <param name="sFieldName"></param>
            /// <param name="iWidth"></param>
            public static void InitGridViewTitle(GridControl gridControl, GridView gridView, string[] sCaption, string[] sFieldName, int[] iWidth)
            {
                DevExpress.XtraGrid.Columns.GridColumn col = new DevExpress.XtraGrid.Columns.GridColumn();

                for (int i = 0; i < sCaption.Length; i++)
                {
                    col = new DevExpress.XtraGrid.Columns.GridColumn();
                    col.Caption = sCaption[i];
                    col.FieldName = sFieldName[i];
                    col.Width = iWidth[i];
                    col.VisibleIndex = i;
                    gridView.Columns.Add(col);
                }
                gridView.GridControl = gridControl;
                gridControl.ViewCollection.Add(gridView);
            }
            #endregion // end InitGridView

            #region 初始化Dev CardView 表头
            /// <summary>
            /// 初始化Dev CardView 表头
            /// </summary>
            /// <param name="cardView"></param>
            /// <param name="gridColumn"></param>
            public static void InitCardViewTitle(CardView cardView,GridColumn[] gridColumn)
            {
                cardView.Columns.AddRange(gridColumn);
            }
            /// <summary>
            /// 初始化Dev CardView 表头
            /// </summary>
            /// <param name="cardView"></param>
            /// <param name="sCaption"></param>
            /// <param name="sFieldName"></param>
            /// <param name="iWidth"></param>
            public static void InitCardViewTitle(CardView cardView, string[] sCaption, string[] sFieldName, int[] iWidth)
            {
                DevExpress.XtraGrid.Columns.GridColumn col = new DevExpress.XtraGrid.Columns.GridColumn();

                for (int i = 0; i < sCaption.Length; i++)
                {
                    col = new DevExpress.XtraGrid.Columns.GridColumn();
                    col.Caption = sCaption[i];
                    col.FieldName = sFieldName[i];
                    col.Name = sFieldName[i];
                    col.Width = iWidth[i];
                    col.VisibleIndex = i;
                    cardView.Columns.Add(col);
                }
            }
            #endregion

            #region InitGridColumn 初始化列
            /// <summary>
            /// 初始化一列
            /// </summary>
            /// <param name="gridColumn"></param>
            /// <param name="sName"></param>
            /// <param name="sCaption"></param>
            /// <param name="sFieldName"></param>
            /// <param name="iWidth"></param>
            /// <param name="iVisibleIndex"></param>
            public GridColumn InitGridColumn( string sName, string sCaption, string sFieldName, int iWidth, int iVisibleIndex)
            {
                GridColumn gridColumn = new GridColumn();

                gridColumn.Name = sName;
                gridColumn.Caption = sCaption;
                gridColumn.FieldName = sFieldName;
                gridColumn.Width = iWidth;
                gridColumn.VisibleIndex = iVisibleIndex;

                return gridColumn;
            }
            /// <summary>
            /// 初始化多列,要求给出参数的维数相同
            /// </summary>
            /// <param name="gridColumn"></param>
            /// <param name="sName"></param>
            /// <param name="sCaption"></param>
            /// <param name="sFieldName"></param>
            /// <param name="iWidth"></param>
            /// <param name="iVisibleIndex"></param>
            public GridColumn[] InitGridColumn(string[] sName, string[] sCaption, string[] sFieldName, int[] iWidth, int[] iVisibleIndex)
            {
                int iLen = sCaption.Length;
                GridColumn[] gridColumn=new GridColumn[iLen];

                for (int i = 0; i < gridColumn.Length; i++)
                {
                    gridColumn[i].Name = sName[i];
                    gridColumn[i].Caption = sCaption[i];
                    gridColumn[i].FieldName = sFieldName[i];
                    gridColumn[i].Width = iWidth[i];
                    gridColumn[i].VisibleIndex = iVisibleIndex[i];
                }

                return gridColumn;
            }

            #endregion // end InitGridColumn

            #region InitGridBand  初始化多表头的GridBand
            /// <summary>
            /// 初始化多表头的GridBand
            /// </summary>
            /// <param name="gridBand">大表头</param>
            /// <param name="sName"></param>
            /// <param name="sCaption"></param>
            /// <param name="iWidth"></param>
            /// <param name="gridColumn">小表头</param>
            public void InitGridBand(DevExpress.XtraGrid.Views.BandedGrid.GridBand gridBand,string sName,string sCaption,int iWidth,
                DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn[] BandedGridColumn)
            {
                gridBand.Name = sName;
                gridBand.Caption = sCaption;
                gridBand.Width = iWidth;
                for (int i = 0; i < BandedGridColumn.Length; i++)
                {
                    gridBand.Columns.Add(BandedGridColumn[i]);
                }
            }
            /// <summary>
            ///
            /// </summary>
            /// <param name="sName"></param>
            /// <param name="sCaption"></param>
            /// <param name="sFieldName"></param>
            /// <param name="iWidth"></param>
            /// <param name="iVisibleIndex"></param>
            /// <returns></returns>
            public BandedGridColumn InitBandedGridColumn(string sName,string sCaption,string sFieldName,int iWidth,int iVisibleIndex)
            {
                DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn bandedGridColumn = new BandedGridColumn();

                bandedGridColumn.Name = sName;
                bandedGridColumn.Caption = sCaption;
                bandedGridColumn.FieldName = sFieldName;
                bandedGridColumn.Width = iWidth;
                bandedGridColumn.VisibleIndex = iVisibleIndex;

                return bandedGridColumn;
            }
          /// <summary>
          ///
          /// </summary>
          /// <param name="sName"></param>
          /// <param name="sCaption"></param>
          /// <param name="sFieldName"></param>
          /// <param name="iWidth"></param>
          /// <param name="iVisibleIndex"></param>
          /// <returns></returns>
            public BandedGridColumn[] InitBandedGridColumn(string[] sName, string[] sCaption, string[] sFieldName, int[] iWidth, int[] iVisibleIndex)
            {
                int iLen= sName.Length;
                DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn[] bandedGridColumn=new BandedGridColumn[iLen];

                for (int i = 0; i < bandedGridColumn.Length; i++)
                {
                    bandedGridColumn[i].Name = sName[i];
                    bandedGridColumn[i].Caption = sCaption[i];
                    bandedGridColumn[i].FieldName = sFieldName[i];
                    bandedGridColumn[i].Width = iWidth[i];
                    bandedGridColumn[i].VisibleIndex = iVisibleIndex[i];
                }

                return bandedGridColumn;
            }
           
            #endregion

            #region ChangGridColumnToBandedGridColumn
            /// <summary>
            ///
            /// </summary>
            /// <param name="gridColumn"></param>
            /// <returns></returns>
            public BandedGridColumn ChangGridColumnTo(GridColumn gridColumn)
            {
                return (BandedGridColumn)gridColumn;
            }
            /// <summary>
            ///
            /// </summary>
            /// <param name="gridColumn"></param>
            /// <returns></returns>
            public BandedGridColumn[] ChangGridColumnTo(GridColumn[] gridColumn)
            {
                return (BandedGridColumn[])gridColumn;
            }
            /// <summary>
            ///
            /// </summary>
            /// <param name="bandedGridColumn"></param>
            /// <returns></returns>
            public GridColumn ChangBandedGridColumnTo(BandedGridColumn bandedGridColumn)
            {
                return (GridColumn)bandedGridColumn;
            }
            /// <summary>
            ///
            /// </summary>
            /// <param name="bandedGridColumn"></param>
            /// <returns></returns>
            public GridColumn[] ChangBandedGridColumnTo(BandedGridColumn[] bandedGridColumn)
            {
                return (GridColumn[])bandedGridColumn;
            }
            #endregion

            #region SetGridControlDataSource 添加数据源
            /// <summary>
            ///
            /// </summary>
            /// <param name="gridControl"></param>
            /// <param name="dt"></param>
            public void SetGridControlDataSource(DevExpress.XtraGrid.GridControl gridControl,DataTable dt)
            {
                gridControl.DataSource = dt;
            }
            /// <summary>
            ///
            /// </summary>
            /// <param name="gridControl"></param>
            /// <param name="ds"></param>
            public void SetGridControlDataSource(DevExpress.XtraGrid.GridControl gridControl, DataSet ds)
            {
                gridControl.DataSource = ds.Tables[0];
            }
            /// <summary>
            ///
            /// </summary>
            /// <param name="gridControl"></param>
            /// <param name="ds"></param>
            /// <param name="sTableName"></param>
            public void SetGridControlDataSource(DevExpress.XtraGrid.GridControl gridControl, DataSet ds,string sTableName)
            {
                gridControl.DataSource = ds.Tables[sTableName];
            }
            #endregion // end SetGridControlDataSource

            #region ExportGridViewDataSource 导出GridView数据源
            /// <summary>
            /// 返回 DataView
            /// </summary>
            /// <param name="gridView"></param>
            /// <returns></returns>
            public DataView ExportGridViewDataSource(DevExpress.XtraGrid.Views.Grid.GridView gridView)
            {
                return (DataView)gridView.DataSource;
            }
            /// <summary>
            /// 返回 Datable
            /// </summary>
            /// <param name="gridView"></param>
            /// <param name="sTableName"></param>
            /// <returns></returns>
            public DataTable ExportGridViewDataSource(GridView gridView, string sTableName)
            {
                DataView dv = (DataView)gridView.DataSource;
                return dv.ToTable(sTableName);
            }
            #endregion

            #endregion // end Methods
        }
    }

  • 相关阅读:
    131. Palindrome Partitioning
    130. Surrounded Regions
    129. Sum Root to Leaf Numbers
    128. Longest Consecutive Sequence
    125. Valid Palindrome
    124. Binary Tree Maximum Path Sum
    122. Best Time to Buy and Sell Stock II
    121. Best Time to Buy and Sell Stock
    120. Triangle
    119. Pascal's Triangle II
  • 原文地址:https://www.cnblogs.com/fully/p/1795818.html
Copyright © 2011-2022 走看看