private void dataGridViewTornei_CellClick(object sender, DataGridViewCellEventArgs e) { var senderGrid = (DataGridView)sender; DataGridView dgv = sender as DataGridView; DataGridViewRow row = dataGridViewTornei.Rows[e.RowIndex]; if (e.ColumnIndex >= 0 && senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn && e.RowIndex >= 0) { if (MessageBox.Show("Eliminare il Torneo " + row.Cells["TournamentName"].Value + " ? (verranno cancellate anche tutte le iscrizioni al torneo stesso)", "Attenzione", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) { Int32 idTorneo = (int)row.Cells["tournamentId"].Value; if (SqlDal_Tournaments.EliminaTorneo(idTorneo)) { if (SqlDal_Tournaments.EliminaAtletiVsTorneoVsDiscipline(idTorneo)) { if (SqlDal_Tournaments.EliminaTorneoVsDiscipline(idTorneo)) { MessageBox.Show("Torneo ELIMINATO correttamente", "Messaggio", MessageBoxButtons.OK, MessageBoxIcon.Information); LoadAllTornei(); } else { MessageBox.Show("Errore durante la cancellazione delle Discipline del Torneo", "Eroore", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Errore durante la cancellazione degli Atleti associati al Torneo", "Eroore", MessageBoxButtons.OK, MessageBoxIcon.Error); } } MessageBox.Show("Errore durante la cancellazione del Torneo", "Eroore", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }