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;

posted @ 2010-09-02 16:05  $walker  阅读(1021)  评论(0编辑  收藏  举报