Удаление выделенной строки:
C#:
private void DeleteButton_Click(object sender, EventArgs e)
{
if (dataGridView1.SelectedRows.Count > 0)
{
// Получаем ID выбранной записи из скрытого столбца 'id'
int columnIndex = 0; // индекс скрытого столбца 'id'
string columnName = dataGridView1.Rows[0].Cells["name"].Value.ToString(); // имя ячейки столбца name
int selectedId = Convert.ToInt32(dataGridView1.SelectedRows[0].Cells[columnIndex].Value);
// Запрашиваем подтверждение на удаление записи
DialogResult result = MessageBox.Show($"Вы хотите удалить запись {columnName}?", "Удаление", MessageBoxButtons.YesNo);
if (result == DialogResult.Yes)
{
// Удаляем запись из базы данных
string queryString = "DELETE FROM listEven WHERE id = @id;";
using (SQLiteConnection connection = new SQLiteConnection("Data Source=" + dbPath + ";Version=3;"))
{
SQLiteCommand command = new SQLiteCommand(queryString, connection);
command.Parameters.AddWithValue("@id", selectedId);
try
{
connection.Open();
command.ExecuteNonQuery();
}
catch (Exception ex)
{
MessageBox.Show("Удалить запись не получилось: " + ex.Message, "Ошибка");
return;
}
}
// Удаляем строку из DataGridView
dataGridView1.Rows.RemoveAt(dataGridView1.SelectedRows[0].Index);
MessageBox.Show("Запись удалена.", "Success");
}
}
else
{
MessageBox.Show("Выберите строку.", "Ошибка");
}
}
Last edited: