从数据网格视图和数据库中删除选定的行

拉维·库马尔

在我的WinForms应用程序中,我需要同时从数据网格视图和数据库中删除选定的行,然后保存数据库。

我有下面的代码,现在它只是从datagridview中删除,而不是从数据库中删除,请指导我错了。

private void button1_Click(object sender, EventArgs e)
{
    try
    {
        String msg = "Confirm Delete?";
        String caption = "Delete Record";
        MessageBoxButtons buttons = MessageBoxButtons.YesNo;
        MessageBoxIcon ico = MessageBoxIcon.Question;
        DialogResult result;
        result = MessageBox.Show(this, msg, caption, buttons, ico);
        if (result == DialogResult.Yes)
        {
            foreach (DataGridViewRow item in this.iP_SpoolsDataGridView.SelectedRows)
            {
                using (SqlConnection con = new SqlConnection(cs))
                {
                    SqlCommand cmd = con.CreateCommand();
                    int id = Convert.ToInt32(iP_SpoolsDataGridView.SelectedRows[0].Cells[0].Value);
                    cmd.CommandText = "Delete from Lot_Numbers where ID='" + id + "'";

                    iP_SpoolsDataGridView.Rows.RemoveAt(this.iP_SpoolsDataGridView.SelectedRows[0].Index);
                    con.Open();
                    cmd.ExecuteNonQuery();

                }

            }
        }
        else
        {
            return;
        }
    }
    catch (Exception ex)
    {
        MessageBox.Show("Deleting Failed:" + ex.Message.ToString(), "Delete",
            MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
埃尔顿·比卡略(Elton Bicalho)

尝试这个:

private void button1_Click(object sender, EventArgs e)
{
    try
    {
        String msg = "Confirm Delete?";
        String caption = "Delete Record";
        MessageBoxButtons buttons = MessageBoxButtons.YesNo;
        MessageBoxIcon ico = MessageBoxIcon.Question;
        DialogResult result;
        result = MessageBox.Show(this, msg, caption, buttons, ico);
        if (result == DialogResult.Yes)
        {
            int id = 0;
            foreach (DataGridViewRow item in this.iP_SpoolsDataGridView.SelectedRows)
            {
                id = Convert.ToInt32(item.Cells[0].Value.ToString());
                if (Database_Remove_LotNumberById(id))
                {
                    iP_SpoolsDataGridView.Rows.RemoveAt(item.Index);
                }
            }
        }
        else
        {
            return;
        }
    }
    catch (Exception ex)
    {
        MessageBox.Show("Deleting Failed:" + ex.Message.ToString(), "Delete",
            MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
}


//The code become clean if you separate the Database Operations
private bool Database_Remove_LotNumberById(int IdLotNumber)
{
    bool IsRemovedFromDatabase = false;
    try
    {
        using (SqlConnection con = new SqlConnection(cs))
        {
            SqlCommand cmd = con.CreateCommand();
            cmd.CommandText = "Delete from Lot_Numbers where ID= @ID";
            cmd.Parameters.AddWithValue("@ID", IdLotNumber);
            con.Open();
            cmd.ExecuteNonQuery();
            IsRemovedFromDatabase = true;
        }
    }
    catch (SqlException ex)
    {
        // Handle the SQL Exception as you wish
        MessageBox.Show("Deleting Failed:" + ex.Message.ToString(), "Delete", MessageBoxButtons.OK, MessageBoxIcon.Error);
        //or throw 
    }
    return IsRemovedFromDatabase;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从datagridview和数据库中删除选定的行?

来自分类Dev

验证每行后如何从UltraGrid和数据库中删除选定的行?

来自分类Dev

从 DataGrid 和数据库 C# 中删除选定的行

来自分类Dev

从列表视图和数据库中删除项目

来自分类Dev

从datagrid视图中删除选定的行并在C#中更新mysql数据库

来自分类Dev

SQLException从JTable和数据库中删除行

来自分类Dev

无法从sqlite数据库中删除选定的行

来自分类Dev

从列表框和数据库中删除选定的项目

来自分类Dev

Android删除项目列表视图和数据库

来自分类Dev

删除 datagridview 和数据库中的特定数据

来自分类Dev

如何使用数据网格上的每个删除按钮从数据库中删除行

来自分类Dev

无法删除数据网格行并将剩余的行保存回数据库中

来自分类Dev

在不使用数据库的情况下从网格视图删除行

来自分类Dev

在MVC中实例化视图,模型和数据库

来自分类Dev

如何从选定行datagridview中删除记录并在删除后更新数据库?

来自分类Dev

使用 OnItemClickListener 从 ListView 和数据库中删除项目

来自分类Dev

初学者:从表和数据库PHP / HTML / MySQL中删除行

来自分类Dev

下一行或 id 从表和数据库中删除

来自分类Dev

从 SQL 数据库中删除 ListView 中的选定项

来自分类Dev

如何使用Hibernate删除数据库中jTable的选定行?

来自分类Dev

从DataGridView和MS-Access数据库中删除选定的行

来自分类Dev

删除SQL数据库中的视图重复数据

来自分类Dev

删除数据库中的行

来自分类Dev

Android从数据库中删除行

来自分类Dev

无法从数据库中删除行

来自分类Dev

删除数据库中的行

来自分类Dev

如何在分组的Kendo网格中获取选定行的索引和数据

来自分类Dev

如何在分组的Kendo网格中获取选定行的索引和数据

来自分类Dev

从数据库GridView中触发选定的行

Related 相关文章

  1. 1

    如何从datagridview和数据库中删除选定的行?

  2. 2

    验证每行后如何从UltraGrid和数据库中删除选定的行?

  3. 3

    从 DataGrid 和数据库 C# 中删除选定的行

  4. 4

    从列表视图和数据库中删除项目

  5. 5

    从datagrid视图中删除选定的行并在C#中更新mysql数据库

  6. 6

    SQLException从JTable和数据库中删除行

  7. 7

    无法从sqlite数据库中删除选定的行

  8. 8

    从列表框和数据库中删除选定的项目

  9. 9

    Android删除项目列表视图和数据库

  10. 10

    删除 datagridview 和数据库中的特定数据

  11. 11

    如何使用数据网格上的每个删除按钮从数据库中删除行

  12. 12

    无法删除数据网格行并将剩余的行保存回数据库中

  13. 13

    在不使用数据库的情况下从网格视图删除行

  14. 14

    在MVC中实例化视图,模型和数据库

  15. 15

    如何从选定行datagridview中删除记录并在删除后更新数据库?

  16. 16

    使用 OnItemClickListener 从 ListView 和数据库中删除项目

  17. 17

    初学者:从表和数据库PHP / HTML / MySQL中删除行

  18. 18

    下一行或 id 从表和数据库中删除

  19. 19

    从 SQL 数据库中删除 ListView 中的选定项

  20. 20

    如何使用Hibernate删除数据库中jTable的选定行?

  21. 21

    从DataGridView和MS-Access数据库中删除选定的行

  22. 22

    删除SQL数据库中的视图重复数据

  23. 23

    删除数据库中的行

  24. 24

    Android从数据库中删除行

  25. 25

    无法从数据库中删除行

  26. 26

    删除数据库中的行

  27. 27

    如何在分组的Kendo网格中获取选定行的索引和数据

  28. 28

    如何在分组的Kendo网格中获取选定行的索引和数据

  29. 29

    从数据库GridView中触发选定的行

热门标签

归档