将DataGridView中选择的行存为一个DataTable,就要将DataGridViewRow对象转为DataRow对象。
具体做法如下:
private void btn_in_all_Click(object sender, EventArgs e)
{
//获取左边dataview 转换成 datatable
DataTable TotalDT = (DataTable)dgvLeft.DataSource;
//选中Rows放在集合中
DataGridViewSelectedRowCollection rowColl = dgvLeft.SelectedRows;
if (rowColl == null)
return;
//克隆一个表结构
DataTable gridSelectDT = TotalDT.Clone();
for (int i = 0; i < rowColl.Count; i++)
{
DataRow dataRow = (rowColl[i].DataBoundItem as DataRowView).Row;
gridSelectDT.ImportRow(dataRow);
}
this.dgvRight.DataSource = gridSelectDT;
this.labelRightCount.Text = dgvRight.RowCount.ToString();
//如果选择至右就当从左边删除行
//遍历单元表格字段
//foreach (DataGridViewRow row in dgvLeft.SelectedRows)
//{
// // MessageBox.Show(row.Cells["SPDM"].Value.ToString());
// string strSPDM = row.Cells["SPDM"].Value.ToString();
//}
}