Utilizzando il control GridView l'indice della riga del controllo che ha causato il PostBack, può essere recuperato attraverso l'evento RowCommand.
All'event handler viene passato come parametro un oggetto GridViewCommandEventArgs, attraverso la proprietà CommandArgument è possibile recuperare l'indice di della riga.
Il meccanisco è del tutto automatico per le CommandField, mentre nel caso della TemplateField è necessaria qualche riga di codice in più.
Per prima cosa recuperiamo l'oggetto all'origine del PostBack tramite la proprietà CommandSource, eseguiamo il cast su Control e successivamente recuperiamo il NamingContainer che nel nostro caso è l'oggetto GridViewRow, che espone la proprietà RowIndex.
Di seguito un estratto del codice:
// recupero l'oggetto che ha causato l'evento Control c = (Control)e.CommandSource; // recupero il NamingConteiner GridViewRow r = (GridViewRow)c.NamingContainer; // recupero e visualizzo l'indice della riga this.Label1.Text = string.Format("indice riga selezionata: {0}",r.RowIndex);
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Implementare il throttling in ASP.NET Core
Effettuare il binding di date in Blazor
Load test di ASP.NET Core con k6
Short-circuiting della Pipeline in ASP.NET Core
I più letti di oggi
- Tutorial Windows Communication Foundation
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Gestire la cancellazione di una richiesta in streaming da Blazor
- Repository con code-first di Entity Framework
- Blazor: Security
- Utilizzare WebAssembly con .NET, ovunque
- Protobuf: un serializzatore alternativo per WCF