在两个表单之间传递gridview数据

时间:2013-09-18 11:56:17

标签: c# datagridviewrow

如何在Form2 Gridview上传输Form1检查的GridView Rows数据?

喜欢这样:enter image description here

1 个答案:

答案 0 :(得分:1)

有很多方法可以实现这一目标。我脑海中最简单的是:

创建GetDataForm的istance并调用显示表单并获得结果的方法:

GetDataForm form2 = new GetDataForm();
List<DataGridViewRow> res = form2.ShowForm();
for (int i = 0; i < res.Count; i++)
    mainFormGrid.Rows.Add(res[i]);

- 在您的GetDataForm中,您应该使用以下方法:

bool _closedByTransferButton = false;
public List<DataGridViewRow> ShowForm() 
{ 
   ShowDialog();
   List<DataGridViewRow> res = new List<DataGridViewRow>();
   if(_closedByTransferButton)
   {
       for(int i = 0;i<grid.Rows.Count;i++)
           if((bool)grid.Rows[i].Cells["checkboxColumn"].Value)
               res.Add(grid.Rows[i]);
   }
   return res;
}

- Click按钮的Transfer事件应为:

private void tranferButton_Click(object sender, EventArgs e)
{
   _closedByTransferButton = true;
   Close();
}

希望这有帮助。