GridView & SqlDataSource

mercoledì 24 giugno 2009 - 18.41

skraus Profilo | Junior Member

Salve in una pagina aspx ho inserito l'istanza di un bottone, di un gridView e di un SQLDataSource.

Da Design della pagina ho impostato come origine dati della griglia il SqlDataSource. Sempre sulla griglia ho abilitato il sorting e paging dei dati.

Nella gestione dell'evento clic del bottone ho assegnato alla proprietà SelectCommand del SqlDataSource una variabile stringa contenente il testo di una query di selezione.

Fin qui tutto ok. Nel senso che tutto funziona correttamente. Al clic sul tasto mi viene mostrata la tabella con i dati.

Il problema sta nel momento in cui chiedo, mediante clic sull'intestazione di un campo, l'ordinamento dei dati. La griglia scompare. Sono andato a spulciare nell'evento Sorting della GridView e ho constatato che la proprietà SelectCommand del SQLDataSource ha (giustamente ?) perso il valore assegnatogli.

Ho esigenza specifica che la proprietà SelectCommand venga valorizzata a seguito del clic sul bottone.

Al momento ho risolto utilizzando una variabile di sessione in cui memorizzo il valore della variabile stringa che contiene la query e poi all'evento sorting lo riassegno alla SelectCommand eseguendo il databinding della griglia.

Ho sbagliato ? se si cosa ? come si potrebbe fare diversamente ?

Grazie, a tutti.
Sk

ciat Profilo | Newbie

E' corretto che sparisca la gridview perchè le assegni i valori su un evento che si verifica solo al click. Puoi provare ad assegnare la query direttamente da interfaccia e agire su enable o visible della gridview per farla vedere solo quando vuoi tu, se ho capito quello che vuoi fare.
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5