IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Accès aux méthodes d’un UserControl placé dans un CreateUserWizard


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 24
    Points : 17
    Points
    17
    Par défaut Accès aux méthodes d’un UserControl placé dans un CreateUserWizard
    Bonjour à tous,

    Comme mentionné dans le titre, j'ai un probleme pour acceder à une méthode d'un UserControl placé dans un CreateUserWizard.

    Voici le code de la page sur laquelle est placé le CreateUserWizard:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <%@ Register Src="../control/user_profil.ascx" TagName="UserProfile1" TagPrefix="up" %>
    ....
    <asp:CreateUserWizard ID="CreateUserWizard1" runat="server">
        <WizardSteps>
            <asp:CreateUserWizardStep ID="CreateUserWizardStep1" runat="server">
            </asp:CreateUserWizardStep>
            <asp:TemplatedWizardStep ID="CreateUserWizardProfil" runat="server" AllowReturn="False"
                StepType="Step" Title="Votre profil">
                <ContentTemplate>
                    <div class="titrePage">
                        <asp:Literal ID="ltTitreProfil" runat="server" Text="Veuillez compléter votre profil"></asp:Literal></div>
                    <div>
                        <up:UserProfile1 ID="UserProfile1" runat="server" UserName="upProfil" />
                    </div>
                </ContentTemplate>
                <CustomNavigationTemplate>
                    <asp:Button ID="btnUpdateProfile" CommandName="MoveNext" Text="Enregistrer" runat="server"
                        OnClick="btnUpdateProfile_Click" ValidationGroup="ucMembre" />
                </CustomNavigationTemplate>
            </asp:TemplatedWizardStep>
            <asp:CompleteWizardStep ID="CompleteWizardStep1" runat="server">
            </asp:CompleteWizardStep>
        </WizardSteps>
    </asp:CreateUserWizard>
    Et violà comment j'essaye l'atteindre la methode "public void Save()" placée dans le UserControl:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public void btnUpdateProfile_Click(object sender, EventArgs e)
    {
        UserControl UserProfile1 = (UserControl)CreateUserWizardProfil.ContentTemplateContainer.FindControl("UserProfile1");
        UserProfile1.Save();
    }
    Bien entendu ça ne fonctionne pas, mais je precise qu'en deplacant le "<up:UserProfile1 ID="UserProfile1" runat="server" UserName="upProfil" />" en dehors du CreateUserWizard, j'ai accès à la methode Save() sans problème.

    Meilleures salutations à tous et merci d'avance à ceux qui pourront éclairer ma lanterne.

    Pierre

  2. #2
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Tu peux essayer

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 24
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par kmaniche Voir le message
    Tu peux essayer
    Merci pour ta réponse,

    mais ça ne marche toujours pas, j'ai toujours le message d'erreur :

    'System.Web.UI.UserControl' ne contient pas une définition pour 'Save' et aucune méthode d'extension 'Save' acceptant un premier argument de type 'System.Web.UI.UserControl' n'a été trouvée (une directive using ou une référence d'assembly est-elle manquante*?)

    Je pense que le problème est au niveau du chemin d'acces vers cet UserControl, mais il me semble avoir tout éssayer...

  4. #4
    Membre expérimenté Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Points : 1 352
    Points
    1 352
    Par défaut
    d'apres ce que j'ai pu comprendre làtu essaye d'acceder a la methode save d'un user controle mais pas de ton UserProfile. Cela provient du cast que tu fais de ton findcontrol.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 24
    Points : 17
    Points
    17
    Par défaut
    Bonjour Arthis et merci pour ta réponse,

    Effectivement, je souhaite accéder à la méthode Save() placée dans le UserControl.

    Débutant en asp.net, pourrais tu m'expliquer plus en detail ce qui cloche, merci d'avance.

  6. #6
    Membre expérimenté Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Points : 1 352
    Points
    1 352
    Par défaut
    Essaye cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public void btnUpdateProfile_Click(object sender, EventArgs e)
    {
        UserProfile MonUserProfile = (UserProfile)CreateUserWizardProfil.ContentTemplateContainer.FindControl("UserProfile1");
        MonUserProfile.Save();
    }

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 24
    Points : 17
    Points
    17
    Par défaut
    Merci,

    Mais je me trouve maintenant avec l'erreur:
    Le type ou le nom d'espace de noms 'UserProfile' est introuvable (une directive using ou une référence d'assembly est-elle manquante*?)

  8. #8
    Membre expérimenté Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Points : 1 352
    Points
    1 352
    Par défaut
    tu dois t'arranger pour pouvoir faire reference a un espace de nom (namespace) qui contient ton user controle ou a tout le moins, la fonction qui t'interesse?

    Peut etre que ton user controle realise une action dont le contenu pourrait etre placé à un niveau superieur afin d'etre accessible a la fois par ton user controlet par ta page qui contient le user controle....

    En totu cas bon courage à toi,

Discussions similaires

  1. UserControl parent-enfant accès aux méthodes
    Par gridin dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 24/03/2011, 11h17
  2. Accès aux méthodes d'un objet dans un vector.
    Par Huruu dans le forum Débuter
    Réponses: 4
    Dernier message: 09/02/2010, 16h23
  3. Réponses: 5
    Dernier message: 01/02/2007, 13h14
  4. Réponses: 5
    Dernier message: 22/04/2005, 11h38
  5. [TOMCAT] JSP problème d'accès aux méthodes d'une classes
    Par gunnm dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 22/05/2004, 14h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo