假设我有一个包含100条记录的数据网格视图
当我选择一条记录时
记录转到Datagridview form2
然后当我回到form1
其他人选择了记录
它也适用于form2,但也有之前的经济衰退
希望form2中的datagridview保持不变
我希望你明白我的意思
答案 0 :(得分:1)
Form2 Frm2;
Public DataTable Dt;
在表单加载事件中初始化Frm2和dt:
private void Form1_Load(object sender, EventArgs e)
{
this.Frm2 = new Form2();
this.Frm2.Dt = new DataTable();
}
以下是完成工作的地方:
public void AddRowInDataTable(int SelectedIndex)
{
//Add the columns
DataColumn col = null;
//For each columns in the datagridveiw add a new column to data table
foreach (DataGridViewColumn dgvCol in dataGridView1.Columns)
{
col = new DataColumn(dgvCol.Name);
if (!Frm2.dt.Columns.Contains(dgvCol.Name))
Frm2.dt.Columns.Add(col);
}
//Add the selected row from the datagridview
DataRow row = null;
row = Frm2.dt.Rows.Add();
foreach (DataGridViewColumn column in dataGridView1.Columns)
{
row[column.Index] = dataGridView1.Rows[SelectedIndex].Cells[column.Index].Value;
}
}
处理form1的dataGridView1的事件OnCellClick
:
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
AddRowInDataTable(e.RowIndex);
Frm2.ShowDialog();
}