Come condiziono un hyperlinkfield su gridview ?

mercoledì 23 maggio 2007 - 13.47

tdj Profilo | Newbie

ci riprovo (con fiducia).

Visual Web Developer. Visual Basic.
ho una pagina gridview con un hyperlinkfield che, click su hyperlink, va su pagina detailsview.
come faccio a condizionare l'hyperlink ed andare sulla pagina detailsview solo se è stato fatto login (ho anche una pagina login) ?

grazie.

Wamba Profilo | Expert

invece di eseguire un link richiama una funzione Js che si occupa di eseguire il redirect.
il controllo lo puoi fare all'interno della funzione Js inserendo del codice da Server tipo:

function Goto(pagina)
{
IsLogged = <%=IsLogged%>

if (IsLogged)
{
....
}
else
{
....
}
}
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba

tdj Profilo | Newbie

grazie, ma non so dove e come inserire una funzione javascript !

lui (VWD) se clicco, in fase di disegno della pagina, sulla colonna hyperlinkata mi apre la pagina di codice e crea una "protected sub" che dovrebbe richiamare per "selectedindexchanged".
io lì dentro ci ho messo un if (request.isauthenticated = false) then response.redirect ("paginadilogin.aspx").

però sembra non filarsela !

Wamba Profilo | Expert

non consco il nome dell'attributo in cui devi inserire url, ma li metti "javascript:miafunzione("nomePagina");" con l'albero funzionava bene
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba

tdj Profilo | Newbie

devo forse usare rowdatabound invece di selectedindexchanged ?

Wamba Profilo | Expert

l'hyperlinkfield ha una proprietà che di chiama HyperLinkField.NavigateUrl prova ad inserire li la chiamata alla funzione Javascript che deve iniziare con "javascript:"
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba

tdj Profilo | Newbie

non per mancare dirispetto a chi ha cercato di aiutarmi ma solo per mia colpevole ignoranza, insisto nel chiedere aiuto a chiunque possa darmi indicazioni su come risolvere il mio problema. Credo si semplice e cerco di riassumerlo :
- uso Visual Web Developer (da circa un mese !)
- visual basic (che non conosco affatto, ma non conosco anche tutto il resto ed è per questo che ho scelto Visual Web Developer perchè dicono che serve pochissimo codice)
- 3 pagine : login, gridview, detailsview
- il problema è : se da gridview scelgo una riga (con hyperlink) per andare nel detailsview e non ho fatto login invece di andare nel datailsview deve andare su login.

se qualche anima buona mi aiuta ...
inoltre mi consigliate cosa leggere e dove leggere (anche inglese) per studiare e diventare almeno capace di fare cose "di base".

grazie !

disumano Profilo | Newbie

io ti consiglio di non usare un hyperlink field, ma di usare il comando seleziona.
1 - lo aggiungi alla gridview;
2 - fai doppio click sulla gridview, ti esce la protected sub selectedindexchange;
3 - aggiungi al suo interno il codice che ti serve, quindi gli dice che se l'utente è loggato deve fare il redirect alla pagina con il dettaglio.

tdj Profilo | Newbie

Ringrazio tutti coloro che hanno provato ad aiutarmi, ma ho risolto da solo. La soluzione è tutta in Visual Web Developer che ti permette di dare o negare accesso a pagine ad utenti. quindi io l'ho utilizzato per consentire l'accesso ad una determinaa pagina ad utenti loggati e negarla agli anonimi. la soluzione è qui : http://msdn2.microsoft.com/it-it/library/ms178429(vs.80).aspx

qualche "esperto" mi dica cosa fare con i miei post aperti. Grazie.
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