Gridview e dropdownlist

mercoledì 26 settembre 2012 - 09.46
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Windows Server 2008 R2  |  Visual Studio 2010

trinity Profilo | Guru

Buongiorno,

ragazzi è possibile e se si come caricare per ogni record di una gridview, una dropdownlist che prende i dati da una tabella sql?
In pratica già i dati della gridview vengono caricati da una tabella sql ed in più devo caricare anche una dropdownlist che prende i dati di un'altra tabella e ad ogni riga gli devo inserire un button (lo so fare) che esegue poi update su una tabella sql dei dati scelti nella dropownlist

Ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

Gluck74 Profilo | Guru

non so se ho capito bene....

ti basterebbe fare una nuova colonna della griglia.
Per questa colonna crei un template dove metti dentro la dropdown collegata ad un datasource che preleva i dati dalla seconda tabella.
L'Importante è che metti gli id nel modo giusto, esempio:

nella tabella1 ti interessa associare il campo campoRecord, mentre la tabella2 ha una chiave ed una descrizione id, descizione
"id" deve essere DataKeyValue della dropdown, mentre descrizione deve essere il DataTextValue della dropdown.
ora devi solo settare la proprietà

SelectedValue='<%# Bind("campoRecord") %>'
____________
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.

trinity Profilo | Guru

ma il datasource per collegarlo alla drop devo gestirlo nell'evento rowdatabound della grid?
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

Gluck74 Profilo | Guru

no, fai tutto a design-time in visualizzazione Progettazione
____________
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.

trinity Profilo | Guru

Ma se volessi gestire il caricamento dei dati nella droplist via codice e non lato progettazione?
Anche perchè devo passare una stored con parametri e non so come passare i parametri all'sqldatasource
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

trinity Profilo | Guru

ciao senti io ho questo come settaggio nella droplist:

<asp:DropDownList ID="DropDownList1" runat="server"
DataSourceID="SqlDataSource1" DataTextField="desc_esenti"
DataValueField="idkey">
</asp:DropDownList>

ma non mi carica nulla. Ho passato all'sqldatasource la mia stored procedure ed impostato i parametri come session.
Il tutto viene gestito in due pagine aspx. Ossia nella prima eseguo il caricamento dei dati nel db, creo le sessioni poi clicco su un button ed apro la seconda pagina aspx dove vi è il gridview che ha il droplist. Nella load di questa pagina carico i dati presi da db e attraverso la progettazione passo l'sqldatasource alla droplist...I dati nella gridview si vedono perfattamento eccetto quelli nella droplist che rimane vuota. Non vorrei che non vengono passati i dati dei parametri che serono alla stored.

Dove secondo te sbaglio?

Ah dimenticavo nella load della seconda pagina dove devono essere caricati tutti i dati, ecco il codice che utilizzo:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

trinity Profilo | Guru

Sono riuscito a caricare i dati nella droplist ora su questa gridview ho anche un button sempre itemtemplate e su questo eseguo un update della tabella db però ora devo prendere e passare anche il valore della droplist ma non so come ricavarlo

ho scritto così:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

ma non funziona, Mi puoi aiutare?

ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

Gluck74 Profilo | Guru

oltre alla dropdownlist, mi fai vedere il codice anche del SqlDataSource collegato? o ancora meglio, tutto quello che hai messo nel TemplateField di quella colonna
____________
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.

trinity Profilo | Guru

sono riuscito a fare tutto ora unica cosa io nella rowdatabound gestisco la visualizzazione di una image a seconda di un determianto valore che viene riportato nella stessa gridview adesso con il droplist tali valori cambiano io vorrei che nel momento in cui cambio il valore della droplist l'immagine venga nascosta o resa visibile a seocnda del tipo di valore..

ecco i miei codici:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

con questo codice faccio tutto ma dopo avere eseguito con successo l'update vorrei che cambiasse l'immagine nella riga in pratica come avviene già nel RowDataBound quando si caraica la gridview all'inizio.

Ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

Gluck74 Profilo | Guru

in teoria dovrebbe già funzionare visto che il RowDatabound avviene dopo la modifica dei dati.

Metti un breackpoint e verifica se i valori sono tutti giusti
____________
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.

trinity Profilo | Guru

Ma nell'evento RowDataBound non ci passa più il codice quando eseguo il rowcommand
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

Gluck74 Profilo | Guru

scusa, hai perfettamente ragione, il Row_Command avviene dopo!!!!

dovresti quindi isolare il codice che modifica l'immagine e metterlo dentro una funzioncina, che poi richiami dove ti serve.

però non ho capito bene come funziona... non riesci a "bindare" anche l'immagine?
____________
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.

trinity Profilo | Guru

In che senso a bindare l'immagine? E come potrei lanciare una funzione?

Scusa ma qui non sono tanto capace :(
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

Gluck74 Profilo | Guru

per aiutarti doveri capire meglio come funziona e cosa fa la tua pagina.
____________
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.

trinity Profilo | Guru

Risolto grazie per l'aiuto
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com
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