29 messaggi dal 08 marzo 2007
Salve a tutti, avrei bisogno di un aiuto:

nell'applicazione che sto sviluppando ci sono 2 pagine collegate, la prima espone una lista di elementi in una gridView, la seconda i dettagli dell'elemento selezionato tramite un TemplateField della griglia della prima pagina.

Ora, il problema e' questo:
in prima battuta alla pressione del TemplateField della griglia(e' un HyperLink)
passavo solo il parametro ID in questo modo

<asp:GridView ID="grdPratiche" runat="server" AutoGenerateColumns="False" DataSourceID="dsPratiche">
<Columns>
<asp:HyperLinkField DataTextField="Codice" DataNavigateURLFormatString="dossier.aspx?id={0}" HeaderText='<%$ Resources:Pratiche, CodiceText %>'
DataNavigateUrlFields="ID" />

....
</asp:GridView >

(scusate l'impaginazione)!!!!!

e nella pagina di dettaglio ricavavo il valore tramite
m_id as integer = Request.QueryString("id")

In questo modo la selezione avveniva correttamente e ricavavo il valore corretto dell'ID.

Adesso pero' ho la necessita' di inviare anche un secondo valore che pero' non e' contenuto nella griglia, ma e' ricavato dalla selezione del menu principale che a sua volta lo invia alla prima pagina(quella con la griglia per intenderci), dove viene salvata in una variabile a livello di pagina

Ricapitolando il valore che devo trasferire dovrebbe fare questi passaggi:
Menu => PrimaPagina(con griglia) => SecondaPagina(dettagli elemento selezionato)

Il primo riesco a farlo senza problemi(nel Web.sitemap imposto l'url del relativo nodo in un modo analogo al metodo utilizzato in prima battuta nella griglia della prima pagina), ma poi mi blocco perche' non so come passare i due valori(ID che gia' passo e kind che e' il valore in questione) dalla prima pagina(griglia) alla pagina di dettaglio e come riuscire poi a ricavarli nella pagina di dettaglio(se il metodo e' diverso da quello che sto usando adesso)

Scusate per il post un po' impegnativo(dato che e' un po' lungo), ma spero di avervi dato tutte le informazioni necessarie.

Grazie a tutti per l'aiuto.

Marco
il secondo valore in querystring deve essere sempre passatto alla pressione del HyperLinkField dentro il GridView ?

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
3.168 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,

lo metti come valore cablato nella query, così ti ritorna nella struttura dati e lo puoi utilizzare nella gridview.

HTH
.

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
29 messaggi dal 08 marzo 2007
Si, devono essere passati tutti e due
29 messaggi dal 08 marzo 2007
Ragazzi tutto a posto, ho risolto il problema,ho creato una proprieta' sull'elemento che prende come parametro il secondo valore che devo passare, ho sostituito l'hyperLinkField originario con un TemplateField dove creo la stringa dell'url (setto la proprieta' NavigateUrl) usando un eval diretto sui dati che devo trasferire, vi posto la soluzione e vi ringrazio tutti per l'aiuto

<%-- <asp:HyperLinkField DataTextField="Codice" DataNavigateURLFormatString="dossier.aspx?id={0}" HeaderText='<%$ Resources:Pratiche, CodiceText %>'
DataNavigateUrlFields="ID" />
--%>
<asp:TemplateField HeaderText="Codice" SortExpression="Codice">
<ItemTemplate>
<asp:HyperLink ID="hypCodice" runat="server" Text='<%# Eval("Codice")%>' NavigateUrl='<%# "dossier.aspx?id=" & Eval("ID") & "&kind=" & Eval("IDGenerePratica") %>'/> =>questa e' la nuova proprieta' che ho creato
</ItemTemplate>
</asp:TemplateField>

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.