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 :

[2.0] Comment un UserControl peut demander à son Conteneur de l'afficher


Sujet :

Windows Forms

  1. #1
    Membre actif
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Points : 252
    Points
    252
    Par défaut [2.0] Comment un UserControl peut demander à son Conteneur de l'afficher
    Bonjour,

    j'ai un UserControl positionné dans le TabPage d'un TabControl.
    Ce UserControl intercepte un évenement et j'aimerai lorsque cet évenement se produit que le UserControl devienne visible.

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public class MonControl : UserControl
    {
     
           private void EvenementRecu(object sender, EventArgs e)
           {
                 // Je suis un UserControl et je veux être visible
           }
     
    }

    Comment puis-je procéder ?

    Merci de votre aide.

  2. #2
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Points : 8 538
    Points
    8 538
    Par défaut
    t'as une propriété "visible" il me semble.
    Les règles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages privés svp

    Software is never finished, only abandoned.

  3. #3
    Membre actif
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Points : 252
    Points
    252
    Par défaut
    Bonjour,

    et merci pour la réponse.
    J'ai essayé d'utiliser cette propriété mais cela ne fonctionne pas.
    Le UserControl est affiché dans le TabPage d'un TabControl.
    La propriété Parent du UserControl est donc le TabPage. Pour afficher un TabPage il faut faire :

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    MonTabControl.SelectTab("NomDuTabPage");

    J'ai donc essayé en faisant:
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    public class MonControl : UserControl
    {
     
           private void EvenementRecu(object sender, EventArgs e)
           {
                 // Je suis un UserControl et je veux être visible
                 TabControl ctrl = this.Parent.Parent as TabControl;
                 if (ctrl != null)
                 {
                      ctrl.SelectTab("NomDuTabPage");
                 }
           }
    }

    Cela fonctionne mais ce n'est pas terrible.
    Le UserControl pourrait être contenu dans autre chose qu'un TabControl.

    Une idée ?

    Merci d'avance.

  4. #4
    Membre émérite

    Inscrit en
    Novembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Novembre 2006
    Messages : 128
    Points : 2 624
    Points
    2 624
    Par défaut
    Tu te crée un évènement sur ton UserControl que tu déclenches quand tu veux le rendre visible.
    Ensuite, tu te branches dessus sur ton Container et quand tu l'affiches, tu fais un uc.Focus() (si ça ne suffit pas, tu affecte le bon tab)

  5. #5
    Membre actif
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Points : 252
    Points
    252
    Par défaut
    Bonjour,

    et merci pour la réponse.
    J'avais pensé à l'évenement mais je me demandais s'il n'existait pas déjà quelque chose côté Parent ou autre.

    Merci pour cette bonne réponse qui me plaît bien, à moins que quelqu'un ait une autre idée.

    Merci

  6. #6
    Membre émérite

    Inscrit en
    Novembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Novembre 2006
    Messages : 128
    Points : 2 624
    Points
    2 624
    Par défaut
    De rien, sinon, mais ça revient un peu au même que l'évènement, ton control parent peut passer un delegate à ton usercontrol.

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

Discussions similaires

  1. Squid: comment l'utilisateur peut changer son mot de passe?
    Par supInfo22 dans le forum Sécurité
    Réponses: 0
    Dernier message: 16/09/2011, 18h00
  2. Comment un User peut changer son mot de passe ?
    Par krilas dans le forum Forms
    Réponses: 2
    Dernier message: 12/08/2009, 14h19
  3. Réponses: 1
    Dernier message: 05/06/2008, 16h14
  4. comment un parent peut savoir si son child se ferme?
    Par guimond dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 22/02/2006, 16h50
  5. Comment un client peut Passer son IOR au serveur ?
    Par ratapapa dans le forum CORBA
    Réponses: 2
    Dernier message: 14/12/2005, 00h19

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