datagridview 和窗体间传值的问题

999-dieure 2009-03-15 11:10:21
在A窗体中有个datagridview1 这里面先有50条记录,做了个筛选就只有10条记录了,现在想在B窗体中显示这只有10条记录。在B窗体中也是用datagridview 这个来显示的
...全文
69 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangping_li 2009-03-15
  • 打赏
  • 举报
回复
你绑定dataGridView时加一列ID隐藏列,选中的时候把ID取出来,传到另一个窗体,根据这些ID查询出来的数据再绑定到窗口上,但是这样如果你选中的记录太多的话,与数据库交互太多了不好

你建一个实体类吧,与dataGridView显示的列一一对应的,如果你显示有Name,Age的话就:
public class Test
{
public string Name
{get;set;}
public int Age
{get;set;}
}
List<Test> list=new List<Test>();
选中十条记录,转向子窗体的时候可以循环取dataGridView的值,添加到集合,然后B窗体直接绑定集合就行了,如:
for(int i=0;i<dtaaGridView.RowCount;i++)
{
if(Convert.ToBoolean(dataGridView.Rows[i].Cells[0].Value)==true)
{
list.Add(new Test{Name=dataGridVIew.Row[i].Cells["Name"].Value,Age=dataGridView.Rows[i].Cells["Age"].Value});
}
}

最终list就是你想要的显示的数据

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧