datatable复制一行数据到本表

懒得解释了,直接用dt.Rows.Add(dt.Rows[0])这个方法的话,会报此行已在此表中,哪怕你复制到别的表,也会报该行已属于别的表,那么就用如下的方法一和方法二来解决吧

不要看我那夸张的datatable测试表,我无聊,加那么多列。。。

DataTable dt = new DataTable();

            dt.Columns.Add("c1", typeof(string));

            dt.Columns.Add("c2", typeof(string));

            dt.Columns.Add("c3", typeof(string));

            dt.Columns.Add("c4", typeof(string));

            dt.Columns.Add("c5", typeof(string));

            dt.Columns.Add("c6", typeof(string));

            dt.Columns.Add("c7", typeof(string));

            dt.Columns.Add("c8", typeof(string));

            dt.Columns.Add("c9", typeof(string));

            dt.Columns.Add("c10", typeof(string));

            dt.Columns.Add("c11", typeof(string));

            dt.Rows.Add("bbb", "bbb", "bbb", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");

            dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");

            dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");

            dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");

            dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");

            dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");

            dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");

            dt.Rows.Add("aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa", "aaa");



		//此处才是示例

            DataRow dr = dt.NewRow();

		 //方法1

            //dt.ImportRow(dt.Rows[0]);

		//方法2

            dr.ItemArray = dt.Rows[0].ItemArray;

            dt.Rows.Add(dr);



            dataGridView1.DataSource = dt;

你可能感兴趣的:(Datatable)