单击按钮到form2删除数据网格视图行

时间:2018-01-23 13:30:57

标签: c# winforms datagridview click

我有restaurantSale(form1),我有supervisorVoidPass(form2) 问题是我无法删除数据..(系统无法找到对象)

以我的形式(1) 是我的datagridview。

然后 在我的表单2中,这是我的代码,此代码用于删除每行的datagridview

 private void button8_Click(object sender, EventArgs e)
        {
            restaurantSale rs = new restaurantSale();
            string inpPass = "1234";
            if (voidPass.Text == inpPass)
            {

                MessageBox.Show("Void Success");
                foreach (DataGridViewRow row in rs.receiptGrid.SelectedRows)
                {
                    rs.receiptGrid.Rows.RemoveAt(row.Index);
                    rs.ShowDialog();
                    MessageBox.Show("Void Records");
                }

            }
        }

1 个答案:

答案 0 :(得分:2)

这一行

restaurantSale rs = new restaurantSale();

创建一个表单的新实例,而不是已经打开的表单(并且有一些数据)。

应该使用现有表格。它可以在Application.OpenForms

中找到
restaurantSale rs = Application.OpenForms.OfType<restaurantSale>().FirstOrDefault();
if (rs == null) return;

在密码检查(rs)之后初始化if (voidPass.Text == inpPass)也是有意义的