Vb.net 如何删除两个datagridview的匹配行?

Vb.net 如何删除两个datagridview的匹配行?,vb.net,Vb.net,我有两个datagridview,分别是datagridview1和datagridview2,还有一个按钮名为delete。两个datagridview都有一些第一列id和第二列名称相同的行。我想如果我从datagridview1中删除一行,那么它应该自动删除datagridview2中匹配的行。我不知道怎么做?请告诉我怎么做 Private子按钮2\u单击(发送者作为对象,e作为事件参数)处理按钮2。单击 对于DataGridView2.SelectedRows中作为DataGridView

我有两个datagridview,分别是datagridview1和datagridview2,还有一个按钮名为delete。两个datagridview都有一些第一列id和第二列名称相同的行。我想如果我从datagridview1中删除一行,那么它应该自动删除datagridview2中匹配的行。我不知道怎么做?请告诉我怎么做

Private子按钮2\u单击(发送者作为对象,e作为事件参数)处理按钮2。单击
对于DataGridView2.SelectedRows中作为DataGridViewRow的每个rw
将x作为字符串
x=rw.单元格(0).值
对于DataGridView1.SelectedRows中作为DataGridViewRow的每一行
DataGridView1.Rows.Remove(行)
如果row.Cells(0).Value=x,则
DataGridView2.Rows.Remove(行)
如果结束
下一个
下一个
端接头

DataGridView1
中删除所选行,并从
DataGridView2
中删除匹配项(如果有)。匹配项由
Id
列标识,该列是两个DGV中的第一列。如果这听起来正确,那么您可以通过LINQ查询实现这一点,如下所示:

Private子按钮2\u单击(发送者作为对象,e作为事件参数)处理按钮2。单击
Dim q=从dataGridView1.SelectedRows.Cast(DataGridViewRow的)中的x开始。
其中(函数(r)不是r.IsNewRow),
(DataGridViewRow的)dataGridView2.Rows.Cast中的y。
其中(函数(r)不是r.IsNewRow和also
r、 单元格(0).Value.ToString=x.Cells(0).Value.ToString)。
DefaultIfEmpty
选择x,y
对于q中的每个t
dataGridView1.Rows.Remove(t.x)
如果t.y不是空,则dataGridView2.Rows.Remove(t.y)
下一个
端接头

这些控件的数据源是什么?我正在从文本框添加数据。DataGridView1.Rows.Add(textbox1.Text、textbox2Text、textbox3Text)