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 :

MasterPage et page


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 104
    Par défaut MasterPage et page
    Bonjour,

    J'ai un petit souci avec les masterPage. Je vous expose mon probleme :
    J'ai une masterPageet une 10aine d'autres pages pages qui utilisent cette masterPage. Disons qu'elles s'appelles 01.aspx, 02.aspx, ....

    dans le code c# de chacune de ces pages, soit, dans 01.aspx.cs, 02.aspx.cs, ... j'ai créé une fonction MaFonction !

    Dans ma masterPage, j'ai placé un bouton. Lorsque je clique sur celui-ci, j'aimerais appeler la fonction MaFonction de la page en cours.

    Comment dois-je procéder ?
    J'ai essayé ceci mais ca ne marche évidemment pas

    public partial class _Default : System.Web.UI.MasterPage
    {
    protected void Button1_Click1(object sender, EventArgs e)
    {
    this.CurrentPage.MaFonction(); ???
    }
    }



    Ai-je été assez clair ?
    Merci de votre aide !

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Il faut que tes pages s'abonnent à l'événement du bouton de ta master page et ainsi tu pourras faire ce que tu souhaites

    C'est les pages filles qui accèdent aux éléments de la master page, pas le contraire

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 104
    Par défaut
    un truc du style ?

    public partial class Formulaires_00 : System.Web.UI.Page
    {

    protected void Page_Load(object sender, EventArgs e)
    {
    ((Button)Master.FindControl("BtEnregistrer")).Click += new EventHandler(MaFonction);
    }

    void MaFonction(object sender, EventArgs a)
    {
    // traitement
    }
    }


    bon, ca ca ne marche pas, OK, mais sur le principe, c'est bien ca ?

    Merci !

  4. #4
    Membre Expert
    Avatar de Pongten
    Homme Profil pro
    IT Analyst & Software Developer
    Inscrit en
    Juin 2002
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Analyst & Software Developer
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 173
    Par défaut
    Le problème, en faisant comme ça, c'est que les fonctions que tu abonnes à l'événements ne seront pas "désabonnées", donc, je ne suis pas sur du résultat...

    Sinon, c'est aussi à un truc du genre que je pensais.

  5. #5
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Moi je verrai un truc bien plus simple du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Protected Sub MaFonction(ByVal sender As Object, ByVal e As EventArgs) Handles MasterPage.Submit
    Et dans ta MasterPage:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Public Event Submit As EventHandler(Of EventArgs)
     
    Protected Sub btnSubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSubmit.Click
            RaiseEvent Submit(Me, e)
        End Sub
    C'est en VB. Reste à traduire

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 104
    Par défaut
    En effet, ce n'était vraiment pas compliqué, il suffisait de le savoir
    Voici donc ma solution C# si jamais qqun était intéressé :

    Dans la masterPage : rien à faire

    et dans la "sousPage" :

    protected void Page_Load(object sender, EventArgs e)
    {
    ((Button)Master.FindControl("IdDuBouton")).Click += new EventHandler(MaFonction);
    }

    private void MaFonction(object sender, EventArgs e)
    {
    // traitement à effectuer
    }

    Merci donc pour vos pistes !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. MasterPage et Page
    Par IsraGab dans le forum ASP.NET
    Réponses: 3
    Dernier message: 19/11/2012, 22h42
  2. Jquery sur Masterpage et page fille
    Par benny-blanco dans le forum ASP.NET
    Réponses: 1
    Dernier message: 19/08/2012, 15h50
  3. Problème d'architecture - MasterPage et page aspx
    Par ioexception dans le forum ASP.NET
    Réponses: 2
    Dernier message: 09/08/2011, 10h43
  4. modifier éléments du masterpage depuis page filles
    Par tortuegenie dans le forum ASP.NET
    Réponses: 7
    Dernier message: 21/03/2008, 16h27
  5. Réponses: 3
    Dernier message: 18/03/2008, 05h34

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