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

Windows Forms Discussion :

[C#]Acceder à l instance de frmMain


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 18
    Par défaut [C#]Acceder à l instance de frmMain
    Je suis nouveau avec le C# (meme avec le developpement windows en general).

    J ai la fonction Main qui me cree une instance de frmMain:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    frmMain frmM = new frmMain();
    .....
    Application.Run(frmM);
    une fenetre application s ouvre donc. Je clique sur un bouton pour par exemple lancer une recherche. une fenetre avec le resultat de la recherche s ouvre. Je peux cliquer sur une ligne de resultat, un clique sur un bouton afficher doit faire apparaitre un texte dans un onglet appartenant a frmMain (membre prive). pour remplir cette onglet je veux faire appel a une fonction de frmMain (public).

    Mon probleme est: Comment avoir acces a cette fonction.

    J ai essaye le code lors du clique sur le bouton:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    frmMain frmM = (frmMain)this.Owner;
    frmM.Afficher(...)
    A cette etape, la fonction afficher est inconnu, le compilateur ne la trouve pas...

    Comment resoudre mon probleme?

    Merci d avance.

  2. #2
    Membre confirmé Avatar de Mathieu.Nanoux
    Étudiant
    Inscrit en
    Février 2004
    Messages
    166
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 166
    Par défaut
    et si tu envoyé une instance de la frmmain a ton constructeur de ta fenetre recherche.

    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
     
    // dans frmmain
    Recherche rech = new Recherche(this);
     
    //Dans la fenetre recherche
     
    class Recherche
    {
       private Form _Fmain;
     
       public Recherche(Form fmain)
       {
          _Fmain = fmain;
       }
    }

  3. #3
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 18
    Par défaut
    Citation Envoyé par lemccain
    et si tu envoyé une instance de la frmmain a ton constructeur de ta fenetre recherche.

    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
     
    // dans frmmain
    Recherche rech = new Recherche(this);
     
    //Dans la fenetre recherche
     
    class Recherche
    {
       private Form _Fmain;
     
       public Recherche(Form fmain)
       {
          _Fmain = fmain;
       }
    }
    Ok, je suis un peu nouveau avec tout cela. ma form est une classe frmMain qui herite de la class System.Windwos.Forms.form. C est donc une classe particuliere, il faudrait que je puisse savoir que mon objet est de type frmMain, non?

    Est ce que je me trompe?

  4. #4
    Membre confirmé Avatar de Mathieu.Nanoux
    Étudiant
    Inscrit en
    Février 2004
    Messages
    166
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 166
    Par défaut
    dans ton constructeur, tu indique c'est une Form. Donc ta fenetre le sait automatiquement.

  5. #5
    Membre Expert Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Par défaut
    après si ça marche pas tu peux toujours caster...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
       private frmMain _Fmain;
     
       public Recherche(Form fmain)
       {
          _Fmain = (frmMain)fmain ;
       }

Discussions similaires

  1. [Cocoa] Acceder à l'instance d'une autre class
    Par hihcam dans le forum Apple
    Réponses: 0
    Dernier message: 11/07/2011, 13h02
  2. Réponses: 3
    Dernier message: 06/10/2009, 13h37
  3. Réponses: 5
    Dernier message: 11/03/2003, 11h49
  4. [VB6] Comment accéder a la visionneuse d'API ??
    Par Argonz dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 13/11/2002, 12h57
  5. Réponses: 3
    Dernier message: 25/07/2002, 10h42

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