5 messaggi dal 08 marzo 2001
Ho creato con Visual Studio un controllo personalizzato LoginBox.ascx che attiva un evento con l'istruzione Raise Event e l'ho incluso nella pagina all'interno di un controllo webpanel Main.aspx.
(l'applicazione è peraltro descritta nella guida ASP.NET della McGraw-hill)

Riporto il codice behind utilizzato:

LoginBox.vb
Public MustInherit Class LoginBox
Inherits System.Web.UI.UserControl
..
Protected TextUser As System.Web.UI.WebControls.TextBox
Protected Textpassword As System.Web.UI.WebControls.TextBox
Protected WithEvents cmdlogin As System.Web.UI.WebControls.Button
Event loginAuthenticated
Event Loginfailed
..
Private Sub cmdlogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdlogin.Click
If TextUser.Text = "prova" And Textpassword.Text = "prova" Then

RaiseEvent loginAuthenticated

Else
RaiseEvent Loginfailed
End If

Main.vb
Public Class ProtectedPage
Inherits System.Web.UI.Page

Protected WithEvents evento As LOgin.LoginBox
Protected WithEvents Label1 As System.Web.UI.WebControls.Label
Protected WithEvents optshort As System.Web.UI.WebControls.RadioButton
Protected WithEvents optlong As System.Web.UI.WebControls.RadioButton
Protected WithEvents Panel As System.Web.UI.WebControls.Panel
Protected WithEvents cmdrefresh As System.Web.UI.WebControls.Button


Private Sub fallito() Handles evento.Loginfailed
Me.Label1.Text = "Login errata!"
End Sub
Sub conferma() handles evento.LoginAuthenticated
panel.visible = false
End Sub
End Class

Le due classi sono state da Visual Studio compilate nell'assembly Login
---------------------------------------

Ho correttamente registrato il file loginBox.ascx nella pagina Main.aspx
Non vengono segnalati errori ma purtroppo sembra che l'evento, anche se generato non venga intercettato.
Come mai non funziona?
Sembra? devi essere sicuro
Comunque strano, il codice sembra giusto. Prova magari ad intercettare l'evento utilizzando l'attributo OnLoginFailed sul controllo, fai un po' di debug e vedi

Ciao

Il mio blog
Homepage
5 messaggi dal 08 marzo 2001
Ti ringrazio del suggerimento ma non so dove e come utilizzare l'attributo OnLoginFailed per intercettare l'evento. Puoi darmi un suggerimento?
ps. ho provato ad utilizzare il debug di VisualStudio e posso confermarti che l'handler di evento non viene intercettato in Main.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.