#662 - Aggiungere una funzione di cancellazione ad un DataGrid
Aggiungere un pulsante di eliminazione ad un datagrid rappresenta il giusto completamento alle possibilità offerte da questo control.
Si tratta per prima cosa di definire una ButtonColumn ed associare un relativo event handler:
<asp:datagrid id="dg" runat="server" OnDeleteCommand="Delete_Click">
<Columns>
[altre colonne]
<asp:ButtonColumn ButtonType="LinkButton" Text="Delete" CommandName="Delete" />
</Columns>
</asp:datagrid>
A questo punto è sufficiente intercettare l'evento Delete_Click e costruire, attraverso una query parametrica, il comando che effettui la cancellazione:
public void Delete_Click(object sender, DataGridCommandEventArgs e)
{
string ID = e.Item.ItemIndex;
string query = "DELETE FROM tabella WHERE ID = @ID";
// eseguo la query parametrica
SqlConnection conn = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(query, conn);
cmd.Parameters.Add("@ID", dg.DataKeys[ID]);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
// riazzero la selezione e rifaccio il binding dei dati
dg.EditItemIndex = -1;
BindGrid();
}
Approfondimenti
- Future Web Conference e .NET 3.5
- #922 - Utilizzare il metodo Page.SetFocus per impostare il focus all'interno della form
- #920 - Utilizzare HttpModule in modalità asincrona
- #935 - Sfruttare l'evento LoadComplete della pagina
- #13 - Invocare il PostBack di un controllo ASP.NET da Silverlight
- Prima beta pubblica per il SP1 del .NET Framework 3.5 e VS 2008
- Real Code Birthday: 10 anni!
- Rilasciata la CTP Preview di ASP.NET 3.5 Extensions
- Speciale .NET Framework 3.5 SP1
- ASPItalia.com Future Web Conference: 15 gennaio 2008, L'Aquila
- #960 - Il controllo EntityDataSource in ASP.NET 3.5 SP1
- #943 - Leggere feed RSS e Atom con il .NET Framework 3.5
Commenti
Esprimi il tuo giudizio su questo script:
Per procedere devi essere autenticato.
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.







Stampa
Snippet
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!
ma per intercettare la riga da cancellare pensavo si facesse cosi:string id = datagrid.DataKeys[e.Item.ItemIndex]evidentemente mi sfugge qualcosaciao
Continua »»» | Rispondi »»»