首页 文章

对象不包含'cells'错误的定义

提问于
浏览
-1

我有两个datagridview . datagridview1和datagridview2 . 当我将datagridview1中的产品添加到datagridview2时,datagridview1中的产品数量将传输到datagridview2 . 现在,当我从datagridview2中删除产品时,我需要将数量转移回datagridview1 .

enter image description here

有人帮助我,但我现在得到这个错误 .
enter image description here

private int FindRowIndexByID(string id)
    {
        for (int i = 0; i < dgvPOSproduct.Rows.Count; i++)
        {
            if (dgvPOSproduct.Rows[i].Cells[0].Value.ToString() == id)
            {
                return i;
            }
        }

        return -1;
    }

    private void btnRemove_Click(object sender, EventArgs e)
    {

        foreach (var row in dgvPOScart.SelectedRows)
        {
            // Get the row in dgvProducts and the quantity he'll gain back
            var productRow = dgvPOSproduct.Rows[FindRowIndexByID(row.Cells[0].Value)];
            int qtyToAdd = Convert.ToInt32(row.Cells[4].Value);

            // Add the quantity back
            productRow.Cells[5].Value = Convert.ToInt32(productRow.Cells[5].Value) + qtyToAdd;
        }

    }

1 回答

  • 1

    在for循环中,将 var 更改为实际类型,即 DataGridViewRow . 像这样:
    foreach (DataGridViewRowrow in dgvPOScart.SelectedRows){ ....

相关问题