C# DatrgridView表格控件的一些用法


public class useDatrgrivView
    {
        string conn = null;
        string sqlComm = null;
        DataSet das = null;
        DataGridView GridView = null;

        //初始化,綁定
        public useDatrgrivView(DataGridView gridView, string Sconn, string sql)
        {
            conn = Sconn;
            GridView = gridView;
            sqlComm = sql;
            das = SqlHelper.ExecuteDataset(conn, CommandType.Text, sqlComm);
            //綁定
            GridView.DataSource = das.Tables[0];
        }

        #region 凍結列
        /// <summary>
        /// 凍結列
        /// </summary>
        /// <param name="ColumnName">列名</param>
        public void FrozenColumns(string ColumnName)
        {
            GridView.Columns[ColumnName].Frozen = true;
        }
        /// <summary>
        /// 凍結列
        /// </summary>
        /// <param name="grid">表格控件</param>
        /// <param name="ColumnName">列名</param>
        public void FrozenColumns(DataGridView grid, string ColumnName)
        {
            grid.Columns[ColumnName].Frozen = true;
        }
        #endregion


        /// <summary>
        /// 表格奇偶行變換顏色,利用循環實現
        /// </summary>
        /// <param name="color">顏色</param>
        public void RowColorChange(Color color)
        {
            if (GridView.Rows.Count != 0)
            {
                for (int i = 0; i < GridView.Rows.Count; )
                {
                    GridView.Rows[i].DefaultCellStyle.BackColor = color;
                    i += 2;
                }
            }
        }

        #region 關鍵字查找
        /// <summary>
        /// 關鍵字查找 ,並顯示第一個查找到的,關將焦點轉移到此
        /// </summary>
        /// <param name="SearchKey">查找的關鍵字</param>
        /// <returns>焦點的行</returns>
        public int SearchByKey(string SearchKey)
        {
            int j;
            for ( j = 0; j != GridView.Rows.Count - 1; j++)
            {
                DataGridViewRow dvr = GridView.Rows[j];
                for (int i = 0; i < GridView.ColumnCount; i++)
                {
                    if (dvr.Cells[i].Value.ToString().StartsWith(SearchKey))
                    {
                        GridView.ClearSelection();
                        dvr.Selected = true;
                        GridView.CurrentCell = dvr.Cells[1];
                        break;
                    }
                }
            }
            return j;
        }

        /// <summary>
        /// 關鍵字查找 ,並顯示第一個查找到的,關將焦點轉移到此
        /// </summary>
        /// <param name="SearchStar">從哪行開始查找</param>
        /// <param name="SearchKey">關鍵字</param>
        /// <returns>焦點的行</returns>
        public int SearchByKeyNex(int SearchStar, string SearchKey)
        {
            int j = SearchStar;
            for (j = 0; j != GridView.Rows.Count - 1; j++)
            {
                DataGridViewRow dvr = GridView.Rows[j];
                for (int i = 0; i < GridView.ColumnCount; i++)
                {
                    if (dvr.Cells[i].Value.ToString().StartsWith(SearchKey))
                    {
                        GridView.ClearSelection();
                        dvr.Selected = true;
                        GridView.CurrentCell = dvr.Cells[1];
                        break;
                    }
                }
            }
            return j;
        }
        
        #endregion


       
    }

調用 :

 udv.FrozenColumns("***");
            //奇偶行顏色
            udv.RowColorChange(System.Drawing.Color.Pink);
            //關鍵字查找
            udv.SearchByKey("**");

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM