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

C# Discussion :

UserControl et DockStyle.Fill


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 177
    Par défaut UserControl et DockStyle.Fill
    Bonjour, j’ai un problème avec le remplissage d’un tabPage.
    Je créé le tabpage de façon dynamique (1 par dll présent dans un dossier). Chacune des dlls implémente la même interface et expose une fonction renvoyant un UserControl. Le problème c’est que le contenu du tabPage ne le remplit pas totalement.


    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
     
    private static void chargerPlugin(String nomDll, String nomClasse, TabControl tc)
            {
                object obj;
                try
                {
                    obj = AppDomain.CurrentDomain.CreateInstanceFromAndUnwrap(nomDll, nomClasse);
                    if (obj is IPlugin)
                    {
                        IPlugin iObj = (obj as IPlugin);
                        TabPage tp = new TabPage(iObj.Presence());
                        tp.Dock = DockStyle.Fill;// Vraiment utile?
                        tp.Controls.Add(iObj.VisualComponent());
                        tc.TabPages.Add(tp);
                    }
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.Message);
                }
            }
    Qu’est ce qu’il faut faire pour ne plus avoir ce problème de Docking ?

    Merci d’avance

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2003
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 311
    Par défaut
    Une tab page prend par défaut l'intégralité de la place du control parent.

    Avec ton screenshot, je pense que le souci ne concerne pas la tabpage, mais les contrôles DANS la tabpage.

    Donc je pense que tu devrais plutôt avoir ce code:

    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
    private static void chargerPlugin(String nomDll, String nomClasse, TabControl tc)
            {
                object obj;
                try
                {
                    obj = AppDomain.CurrentDomain.CreateInstanceFromAndUnwrap(nomDll, nomClasse);
                    if (obj is IPlugin)
                    {
                        IPlugin iObj = (obj as IPlugin);
                        TabPage tp = new TabPage(iObj.Presence());
                        Control ctrl = iObj.VisualComponent();
                        ctrl.Dock = Docking.Fill;
                        tp.Controls.Add(ctrl);
                        tc.TabPages.Add(tp);
                    }
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.Message);
                }
            }
    Note également que les contrôles qui se trouvent dans le UserControl doivent eux-aussi avoir été configurés pour se resizer en fonction de leur user control parent

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 177
    Par défaut
    Merci c'est ce que je cherchais. Je savais que c'était pas ça d'où mon commentaire dans le code

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 08/10/2007, 17h23
  2. [VB6] [MDI] Signaler la fermeture d'une fille à la mère
    Par cpri1shoot dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 13/04/2004, 08h57
  3. [MDI] Ouvrir immédiatement une fenetre fille
    Par phil56 dans le forum C++Builder
    Réponses: 8
    Dernier message: 12/03/2003, 14h27
  4. [VB6] [MDI] Menus contextuels dans les filles
    Par Rosec dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 16/09/2002, 14h00
  5. icône d'une fenêtre fille
    Par bastien dans le forum C++Builder
    Réponses: 6
    Dernier message: 27/05/2002, 13h46

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