Как удалить строку из базы данных, используя каждую кнопку удаления в сетке данных
Я добавил кнопку в каждой строке в моей таблице данных, просмотрите следующую команду
> var deleteButton = new DataGridViewButtonColumn();
> deleteButton.Name = "Deletefromgrid";
> deleteButton.HeaderText = "Delete";
> deleteButton.UseColumnTextForButtonValue = true;
> deleteButton.Text="Delete";
> dataGridView1.Columns.Add(deleteButton);
и мои данные gridview
у меня есть данные загрузки, используя следующую команду
OleDbDataAdapter adp = new OleDbDataAdapter("select appsid,appsname from apps", con); DataTable dt = new DataTable(); adp.Fill(dt); dataGridView1.DataSource = dt;
Теперь, как я могу удалить строку навсегда сформировать базу данных с помощью кнопки Удалить?
1 ответ
Решение
> int i = 0;
> private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
> {
> if (dataGridView1.Columns[e.ColumnIndex].Name == "btndelete")
> {
> using (OleDbConnection conn = new OleDbConnection(sqlCon))
> {
> conn.Open();
> using (OleDbCommand cmd = conn.CreateCommand())
> {
> int id;
> if (this.i > 0)
> {
> id = Convert.ToInt32(this.dataGridView1.Rows[e.RowIndex].Cells[1].Value);
> }
> else
> {
> id = Convert.ToInt32(this.dataGridView1.Rows[e.RowIndex].Cells[0].Value);
> }
> cmd.CommandText = @"delete from Table1 where ID=" + id;
> int i = cmd.ExecuteNonQuery();
> if (i > 0)
> MessageBox.Show("Deleted.");
> }
> }
> }
> dataGridView1.DataSource = BindSource();
> i++;
> }