C# 如何使用按钮选择上次编辑的行

C# 如何使用按钮选择上次编辑的行,c#,.net,winforms,C#,.net,Winforms,我有一个使用DataGridView注册客户的项目,它有3个按钮: “添加”添加文本框中的值 “删除”删除DataGridView中的选定值 “新建”生成下一个id号(它们是连续的)并清除所有文本框字段 我考虑添加一个名为“cancel”的按钮来还原按钮“new”生成的更改,它必须选择最后编辑的行并在文本框中显示其单元格值。 我做了一个“取消”按钮来选择列表中的最后一行,但是列表中的最后一行并不总是最后编辑的 我使用的是Windows窗体,而不是数据库 private void bttn_cus

我有一个使用DataGridView注册客户的项目,它有3个按钮:

  • “添加”添加文本框中的值
  • “删除”删除DataGridView中的选定值
  • “新建”生成下一个id号(它们是连续的)并清除所有文本框字段
  • 我考虑添加一个名为“cancel”的按钮来还原按钮“new”生成的更改,它必须选择最后编辑的行并在文本框中显示其单元格值。 我做了一个“取消”按钮来选择列表中的最后一行,但是列表中的最后一行并不总是最后编辑的

    我使用的是Windows窗体,而不是数据库

    private void bttn_cust_cancel_Click(object sender, EventArgs e)
    {
    
        if (dgv_customer.Rows.Count > 0)
        {
            dgv_customer.Rows[dgv_customer.Rows.Count - 2].Selected = true;
            int i;
            i = dgv_customer.SelectedCells[0].RowIndex;
            txt_cust_clave.Text = dgv_customer.Rows[i].Cells[1].Value.ToString();
            txt_cust_name.Text = dgv_customer.Rows[i].Cells[2].Value.ToString();
            txt_cust_country.Text = dgv_customer.Rows[i].Cells[3].Value.ToString();
        }
        int currentType = Convert.ToInt32(txt_cust_id.Text);
        txt_cust_id.Text = Convert.ToString(--currentType);
    }
    

    您可以创建一个变量或类来保存上次编辑行的索引和/或数据。每次按下“New”按钮时,都会重新初始化该类