给datagridview某行赋值

DataRow dr  =  ds.Tables[ " student " ].NewRow();
dr.ItemArray 
=  ds.Tables[ " student " ].Rows[ 0 ].ItemArray;
ds.Tables[
" student " ].Rows.Add(dr);

// ===========================1=============================== //
向一个DataTable批量添加DataRow时有两种办法:
DataTable dt;
DataTable newdt;
for ( int  i  =   0 ;i < dt.Rows.Count;i ++ )
{
    newdt.Rows.Add(dt.Rows[i].ItemArray);
}


for ( int  i  =   0 ;i < dt.Rows.Count;i ++ )
{
    newdt.ImportRow(dt.Rows[i]); 
}

// ============================2============================== //
若发现添加记录的DataTable一直绑定在一个DataGridView,则先将DataSource设置为null,否则影响速度
this .dataGridView1.DataSource  =   null ;
for ( int  i  =   0 ;i < dt.Rows.Count;i ++ )
   {
    newdt.ImportRow(dt.Rows[i]);
   }
this .dataGridView1.DataSource  =  newdt;

// ============================3============================== //
当从一个表中将记录Copy到另一个结构相同的表中的时候,有两种方式:

     DataTable.ImportRow()
或: DataTable.Rows.Add()

 

正确的使用方法:
       dt1.ImportRow(dt.Rows[
0 ]);
或:   dt1.Rows.Add(dt.Rows[
0 ].ItemArray);

// ============================4============================== //
DataTable[] srcTables  =   ;
foreach ( DataTable src  in  srcTables )
{
    
foreach ( DataRow row  in  src.Rows)
    {
        dest.ImportRow( row ) ;      
    }
}

// ============================5============================== //
对DataTable进行filter的时候
DataTable result 
= new  DataTable ();
DataRow[] rows 
=  dv.Select( filter ) ;
foreach ( DataRow row  in  rows )
{
   result.ImportRow(row) ;
}

你可能感兴趣的:(datagridview)