Code Behind usercontrol

cs_micko75 Messages postés 3 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 4 mars 2004 - 20 janv. 2004 à 09:27
cs_micko75 Messages postés 3 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 4 mars 2004 - 21 janv. 2004 à 09:21
bonjour,
apparemnt vu vos post du mois de novembre 2003 qqn peut m'aider lol ...

Voici mon probleme :

je souhaite faire appel à une methode d'un usercontrol à partir du code behind d'une page aspx ex :

------------ fichier ascx
<%@ Control Inherits="MenuImage" Src="menuimage.ascx.vb" ClassName="MenuImage"%>
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

</html>

------------ fichier ascx.vb
Public Class MenuImage
Inherits System.Web.UI.UserControl

Sub MaSub(ByVal msg As String)
Response.Write(msg)
End Sub

end class

------------ fichier aspx
<%@ Page Inherits="MaPage" Src="mapage.vb" ResponseEncoding="iso-8859-1"%>
<%@ Register TagPrefix="uc1" TagName="MenuImageMiniature" Src="MenuImage.ascx" ClassName="MenuImage"%>
<form id="Form1" method="post" runat="server">

</form>

------------ fichier aspx.vb
Imports System
Imports System.Web.UI
Imports System.Web.UI.Webcontrols

Public Class MaPage
Inherits Page
Protected WithEvents Menuimage1 As MenuImage

Private Sub Page_Load()
MenuImage1.MaSub("Message")
End Sub
End Class

Suite à cela j'ai l'erreur --> Type 'MenuImage' is not defined
J'ai ajouté Imports MenuImage dans aspx.vb mais cela ne fonctionne tjrs pas !
J'ai du oublier qq chose ???

Merci par avance

5 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
20 janv. 2004 à 20:53
Je sais pas si possible d'appeller des méthodes dun user control à partir de la page qui l'appelle, mais j'ai vu (sur ce site je crois) une astuce permettant de faire ce que tu demandes, je m'etais servis de cette technique pour rendre visible ou non, l'usercontrol mais pas pour executer une sub (sinon je m'en rappelle pas)
Bon courage, si tu retrouves la source expliquer l'astuce repasse moi le lien stp

Merci

Cyril (Alias Jesusonline)
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
20 janv. 2004 à 20:55
Voici le post en question : http://www.aspfr.com/code.aspx?ID=8942 c'est pas la soluce au problème :-/ je recherche malgrè tt la soluce car je suis sur qu'elle existe :-p

Cyril (Alias Jesusonline)
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
20 janv. 2004 à 21:44
Je suis arrivé à faire marcher ce que tu demande, il suffit de mettre ta Sub MaSub en public Sub MaSub

Je pense que c'est bon

Cyril (Alias Jesusonline)
0
cs_fabrice69 Messages postés 1765 Date d'inscription jeudi 12 octobre 2000 Statut Membre Dernière intervention 11 décembre 2013 5
21 janv. 2004 à 08:36
Effectivement en mettant public devant ta déclaration de Sub / Fonction ou Variable, elle sera accessible de l'extérieur.
En revanche, ce n'est pas la meilleure methode si c pour des variables (pour une sub comme celle la tu peux directement dire au page load de ton control que le label que tu y places sera peuplé avec ton string transmis.

Pour la transmission, tu passes par des propriétés qui seront elles publiques (l'avantage est que les propriétés sont accéssibles aussi depuis le fichier ASPX directement).

Regarde comment est contruit le User Control ici, tu comprendras mieu je pense :
- http://www.aspfr.com/code.aspx?ID=18961

Romelard Fabrice (Alias F___)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_micko75 Messages postés 3 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 4 mars 2004
21 janv. 2004 à 09:21
Salut

G déclarer en Public la procedure MaSub et c pareil, j'ai l'erreur 'MenuImage' is not defined !
Que dois je faire ?
G oublier qq chose car cela fonctionne si je fais pas de code behind !
Y a bien qqn qui arrive à avoir accès aux procedures d'un usercontrol à partir d'une page aspx en passant par du code behind non ??

A+
0
Rejoignez-nous