Intercettare elemento all'interno DataGrid

martedì 20 giugno 2006 - 18.53

6969 Profilo | Junior Member

Amici,
sicuramente questo è un argomento già visto, ma non riesco ad uscirne. Vi dico:

all'interno dell' evento "DataGridCommandEventArgs" vorrei selezionare il valore di una determinata colonna del DataGrid della riga selezionata:

sub Seleziona_riga (s As Object, e As DataGridCommandEventArgs)

response.redirect("Nuova_Pagina.aspx?retry=" & e.Item.Cells(e.Item.ItemIndex ).text)

end sub

non mi da errori ma non ottengo nessun valore da passare nella nuova pagina.
Cosa mi consigliate
grazie
ciao
alessandro

alx_81 Profilo | Guru

Ciao..
fammi capire.. DataGridCommandEventArgs non è un evento.. sono gli argomenti per la gestione dell'evento..
l'evento a cui tu vuoi scatenare la redirect quale sarebbe? il click su un bottone di una riga del datagrid?

detto questo possiamo proseguire =)
Alx81 =)

http://blogs.dotnethell.it/suxstellino

6969 Profilo | Junior Member

Si è proprio così, l'evento è scatenato dal click di un bottone in corrispondenza della riga del DataGrid..in particolare del ButtomColumn del DataGrid

grazie per ora
ciao
ale

alx_81 Profilo | Guru

intanto nella button column ti consiglio di indicare il commandname, così:

<asp:buttoncolumn ... commandname="REDIR"></asp:ButtonColumn>

in modo che, se hai altri command da aggiungere puoi discriminare su questo parametro (che è passato con gli eventArgs)
poi, l'evento che devi catturare è l'itemcommand:

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

questo funziona se la cella è di tipo boundcolumn...
se hai un template, devi controllare che nell'itemtemplate ci sia un binding o una response.write diretta.
E' possibile infatti, che nell'itemtemplate tu possa trovarti un controllo, quale una label o un textbox.. in quel caso devi fare:

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

Alx81 =)

http://blogs.dotnethell.it/suxstellino

6969 Profilo | Junior Member

Innanzitutto, grazie. Il mio caso è proprio il primo (la cella è di tipo boundcolumn...
), infatti già ho provato ad utilizzare:

..
if e.CommandName = "REDIR" Then Response.Redirect("pagina.aspx?id=" & e.Item.Cells(1).Text)
...

ma il problema è che non ottengo errori, ma non mi cattura il valore della corrispondente cella..

cosa ne dici
ciao
ale

alx_81 Profilo | Guru

Ma la cella è una boundcolumn o un template??? passami l'aspx della cella corrispondente..
Alx81 =)

http://blogs.dotnethell.it/suxstellino
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