Evento DataGridView1_UserDeletingRow che non si attiva

martedì 05 maggio 2009 - 13.25

TaiChi Profilo | Junior Member

Salve a tutti,
da una datagridview cancello una riga con gridGds.Rows.RemoveAt(gridGdS.CurrentCell.RowIndex); in un button e vorrei avere la conferma dall'utente con un avviso nell'evento

grdiGdS_UserDeletingRow (object sender, DataGridViewRowCancelEventArgs e)
{
if( e.Row.IsNewRow == false )

{

if (MessageBox.Show("Vuoi cancellare la riga?", "Conferma", MessageBoxButtons.YesNo, MessageBoxIcon.Information,
MessageBoxDefaultButton.Button2) == DialogResult.No)
e.Cancel = true;

}
}

solo che l'evento non si scatena,perchè? Cosa devo settare nella datagrdiview?


Alessio Forconi

aiedail92 Profilo | Expert

Ciao

L'evento UserDeletingRow viene generato solo quando l'azione viene eseguita dall'interfaccia grafica. Quindi se vuoi avere la conferma dell'utente quando elimini da codice, devi inserirla te ogni volta prima di chiamare Rows.RemoveAt, oppure ti scrivi una funzione che fa il tutto e chiami solo quella:

void CheckAndRemoveAt(int index) { if (MessageBox.Show("Vuoi cancellare la riga?", "Conferma", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } tuaGridView.Rows.RemoveAt(index); }

Luca
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5