ApiO
Messages postés17Date d'inscriptionvendredi 13 janvier 2006StatutMembreDernière intervention17 juin 2008
-
17 juin 2008 à 16:22
yassinebennani
Messages postés249Date d'inscriptionsamedi 13 octobre 2007StatutMembreDernière intervention 2 mai 2014
-
18 juin 2008 à 00:56
Salut tout le monde,
Je développe actuellement un site web (asp/vb) sous vs2005.
J'ai récemment ajouté à la solution d'un projet un "Web User Control". Ce dernier contenant par exemple un bouton. Sur l'événement Click de ce dernier j'ajoute un événement Public.
Le code ressemblerait à la chose suivante :
Partial Public Class maClass
Inherits System.Web.UI.UserControl
Public Event MonEvent As EventHandler
Private Sub MonBouton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MonBouton.Click
RaiseEvent MonEvent (sender, e)
End Sub
End Class
Maintenant dans mon projet, je créé un Web Form et j'y ajoute mon control.
On remarquera que dans "OnMonEvent" j'appel une fonction Js, et là est mon problème.
Message d'erreur du compilateur: BC30456: 'le nom de ma fonction Js' n'est pas un membre de 'ASP.NomDeLaPageHote_aspx'.
j'avoue que cette erreur me rend perplexe.
Il y a t il quelque chose à activer dans mon control/formulaire pour permettre l'exécution de script (côté client) dans mon événement ?
yassinebennani
Messages postés249Date d'inscriptionsamedi 13 octobre 2007StatutMembreDernière intervention 2 mai 2014 18 juin 2008 à 00:56
Bonjour
Tu crée un évenement ServerSide pour éxecuter un script ClientSide et bien je veux pas dire que t'as mélangé les choses mais je pense que tu as une confusion entre les deux, car ta solution n'a pas de logique, un contrôle button peut éxecuter un script ClientSide en passant le nom de la fonction javascript à éxecuter à sa propriété (OnClientClick) qui est de type string et non pas de type Event malgré que le préfix (On) peut nous donner cette illusion, et si tu regarde coté Framework dotnet et spécialement la classe button qui est en question biensûr tu trouveras la méthode AddAttributsToRender qui ajoute le nom de la fonction javascript à l'attribut "onclick" de l'input qui sera généré.
Bref pour être claire le côntrole button génére tout simplement un input html de type submit ou bien de type button ceux-ci ont un attribut qui est onclick et ce que tu cherche à faire c'est comme si tu veux ajouter des attributs dans la balise input html donc ne cherche pas à faire dormir les morts.
Les fins justifient les moyens_________________________________________________
Yassine BENNANI - Ingénieur en génie logiciel & multimédia (Consultant SI)