Problema Gridview in postback

giovedì 25 ottobre 2012 - 18.08
Tag Elenco Tags  C#  |  .NET 4.0  |  Visual Studio 2010  |  SQL Server 2008

Ninja87 Profilo | Junior Member

Buonasera a tutti, avrei un piccolo problema, ho creato un modulo .ascx in cui ho posizionato un gridview in cui ci sono due commandfield (Edit e Delete), il gridview viene caricato tramite datasource e nell'evento rowcreated faccio il controllo se la riga è il Footer e in quel caso creo dinamicamente un pulsante per l'aggiunta e tante textbox quanti sono i campi dall'interno del datasource (avevo dimenticato di dire che il datasouce è in realtà un datatable compilato tramite query).
Fino a qui nessun problema perchè il delete e l'edit funzionano perfettamente, ovviamente dopo aver scritto il relativo codice.
Il problema si pone quando cerco di eseguire l'adding del nuovo record, in quanto l'evento OnRowAdding (da me aggiunto all'interno del modulo .ascx) viene scatenato, però in questo caso, visto che sicuramente si è scatenato il postback, le textbox create dinamicamente in realtà non esistono più per cui quando eseguo il codice

TextBox ctrl = gridView.FooterRow.FindControl("nome_text_creata") as TextBox;

il contenuto di ctrl è sempre null.

Sperando di essere stato sufficentemente chiaro nella mia spiegazione c'è qualcuno che sa come posso risolvere il mio problema?

Grazie in anticipo

Gluck74 Profilo | Guru

ma devi per forza aggiungere dinamicamente i textbox? non puoi includerli già nel fotter?

vedi questo esempio:
http://www.asp.net/web-forms/tutorials/data-access/enhancing-the-gridview/inserting-a-new-record-from-the-gridview-s-footer-vb
____________
http://glucolo.wordpress.com
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

Ninja87 Profilo | Junior Member

avevo fatto così per evitare di creare un gridview specifico per quella tabella, il mio intento era creare un controllo che si auto-adattasse alla struttura della tabella database che gli passo nel datasource, per cui in base al numero di campi creo la struttura nel footer.
ti allego il codice del controllo

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5