首页 > 学院 > 开发设计 > 正文

csharp: DataTable Rename ColumnName and remove Column

2019-11-17 02:16:46
字体:
来源:转载
供稿:网友

csharp: DataTable Rename ColumnName and remove Column

  enum ChangeNume        {            /// <summary>            /// 简体            /// </summary>            gbk=1,            /// <summary>            /// 英文            /// </summary>            en=2,            /// <summary>            /// 繁体            /// </summary>            big=3,            ko=4,            jp=5,        }        /// <summary>        ///         /// </summary>        /// <returns></returns>        DataTable setData()        {            DataTable dt = new DataTable();            dt.Columns.Add("id", typeof(int));            dt.Columns.Add("name", typeof(string));            dt.Columns.Add("patner", typeof(int));            dt.Columns.Add("time", typeof(DateTime));            dt.Rows.Add(1, "dgeo", 0, "2015-01-02");            dt.Rows.Add(2, "geovindu", 1, "2015-03-03");            dt.Rows.Add(3, "gess", 1, "2015-03-23");            dt.Rows.Add(4, "dfadfd", 2, "2015-04-03");            return dt;        }        /// <summary>        ///         /// </summary>        /// <param name="dv"></param>        /// <param name="lname"></param>        PRivate DataTable setGridViewName(DataTable dv, ChangeNume lname)        {            DataTable dt = dv;            switch (lname)            {                case ChangeNume.gbk:                    dt.Columns[0].ColumnName = "序号";                    dt.Columns[1].ColumnName = "名称";                    dt.Columns[2].ColumnName = "父节点";                    dt.Columns[3].ColumnName = "日期";                    break;                case ChangeNume.big:                    dt.Columns[0].ColumnName = "序號";                    dt.Columns[1].ColumnName = "名稱";                    dt.Columns[2].ColumnName = "父節點";                    dt.Columns[3].ColumnName = "日期";                    break;                case ChangeNume.en:                    dt.Columns[0].ColumnName = "id";                    dt.Columns[1].ColumnName = "name";                    dt.Columns[2].ColumnName = "patner";                    dt.Columns[3].ColumnName = "time";                    break;                default:                    dt.Columns[0].ColumnName = "序号";                    dt.Columns[1].ColumnName = "名称";                    dt.Columns[2].ColumnName = "父节点";                    dt.Columns[3].ColumnName = "日期";                    break;            }            return dt;        }        /// <summary>        ///         /// </summary>        public Form2()        {            InitializeComponent();        }        /// <summary>        ///         /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void Form2_Load(object sender, EventArgs e)        {            this.dataGridView1.DataSource = setGridViewName(setData(), ChangeNume.en);        }        /// <summary>        ///         /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void button1_Click(object sender, EventArgs e)        {            this.dataGridView2.DataSource = setGridViewName(setData(), ChangeNume.big);        }

  

   /// <summary>        /// DataTable列名移除          /// </summary>         /// <param name="dcName"></param>         /// <param name="datatable"></param>         private void DataTableRemoveColumn(string dcName,DataTable datatable)         {            // List<string> clmnames = new List<string>(new string[] { "clm6", "clm7", "clm20" });               DataColumnCollection dcCollection = datatable.Columns;               if (dcCollection.Contains(dcName))               {                   dcCollection.Remove(dcName);               }         }        /// <summary>         /// DataTable列索引移除        /// </summary>        /// <param name="index"></param>        /// <param name="datatable"></param>        private void DataTableRemoveIndex(List<int> index, DataTable datatable)        {            //List<int> index = new List<int>(new int[] { 2, 3, 5 });            List<string> primes = new List<string>();            foreach (int i in index)            {                primes.Add(datatable.Columns[i].ColumnName);            }            foreach (string iname in primes)            {                DataTableRemoveColumn(iname, datatable);            }        }

  测试:

            DataTable dt = setData();            DataTable ds=new DataTable();            //店铺代码店铺名称姓名身份证号职位基本出勤时数计薪时数迟到早退            //1            List<int> primes = new List<int>(new int[] {0, 2, 3});            DataTableRemoveIndex(primes, dt);            //2.            //List<string> clmnames = new List<string>(new string[] { "店铺代码", "基本出勤时数", "职位" });            //foreach (string i in clmnames)            //{            //  DataTableRemoveColumn(i, dt);            //}            this.dataGridView1.DataSource = dt;

  


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表