12 messaggi dal 22 settembre 2006
Buongiorno, mi sono imbattuto in un piccolo problema usando le View su una pagina ASP.NET.

ho inserito un Multiview con 2 view e 2 Button così come riportato sotto
    <asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0">
            <asp:View ID="Vista1" runat="server" OnActivate="AttivaVista1">
                <asp:Button ID="DatiCaller" runat="server" Text="Utente connesso" 
                        SkinID="Attuale" OnClick="DatiCaller_Click" />      
                <asp:Button ID="V1Macro" runat="server" Text="Utente Cercato" SkinID="Alternativa" 
                        CommandName="NextView" Visible="false" OnClick="V1Macro_Click" />          

la pagina funziona bene, in fase di Page Load la View viene correttamente attivata ed esegue del codice, i bottoni li utilizzo per passare da una view all'altra, nel senso che , essendo attiva la View 1 ,se clicco sul bottone 2 attivo la Viwe 2 ( e viceversa).
Il problema sorge nel momento in cui, essendo attiva la View1, clicco sul bottone 1 e il codice associato all'evento View1.Activate NON viene eseguito.

Ho provato anche a scrivere nell'evento di click del bottone 1 il comando
MultiView1.SetActiveView(View1)
però non riesco a far rieseguire il codice associato all'evento Activate...

qualche consiglio ?
Beh..se è già attiva...dai un'occhiata col reflector a quello che fa SetActiveView (penso che se è già attiva/visibile) ritorna...ma è da controllare

Ormai programmano tutti... ma la professionalità appartiene a pochi
12 messaggi dal 22 settembre 2006
manuel0081 ha scritto:
Beh..se è già attiva...dai un'occhiata col reflector a quello che fa SetActiveView (penso che se è già attiva/visibile) ritorna...ma è da controllare


stando alla bibbia (Help di MSDN) dovrebbe essere così :

MultiView.SetActiveView Method  

Sets the specified View control to the active view within a MultiView control. 

Use this method to set a View control within a MultiView control as the active view. 
The View control that is set as the active view is rendered to the client. 

Using the SetActiveView method to programmatically set the active view allows the application to determine which View control to render to the client at run time based on criteria such as a user's identity and preferences.


il problema è che non solleva l'evento Activate della View...
visto siamo in tema di citazioni:


The Activate event is raised when the current View control becomes the active view. This occurs when the value of the ActiveViewIndex property changes or the SetActiveView method is called to specify a different View control.


in prativa se è già attiva non lancia nessun evento

ciao marco

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

http://nostromo.spaces.live.com/default.aspx
12 messaggi dal 22 settembre 2006
L'avevo già letto e quindi avevo provato col SetActiveView.
Non avevo prestato attenzione all'aggettivo different e quindi pensavo che richiamando SetActiveView sulla stessa view l'evento fosse sollevato.

Forse non c'è modo di sollevarlo senza cambaire View...
bhe puoi ovviare eseguendo il codice contenuto nell'event handler quando usi il metodo SetActiveView.

ciao marco

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

http://nostromo.spaces.live.com/default.aspx

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.