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 :

[C#]Feuilles MDI


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    363
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 363
    Par défaut [C#]Feuilles MDI
    salut,

    Je souhaiterais faire en sorte qu'une partie seulement de ma form soit mdi, et que les autres form que j'ajoute à cette fenetre ne puisse etre bougé que dans cette partie.

    Pour celà j'ai fait quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    this.zone = new MdiClient();
    this.zone.BackColor = Color.FromArgb(192,192,192);
    this.zone.Location = new Point(105,0);
    this.zone.Size = new Size(634,440);
    this.zone.Visible = true;
    et quand je veux ajouter une fenetre à mon mdi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.zone.Controls.Add(mafenetre);
    mais ca ne marche pas, il me lance une exception comme quoi mafenetre n'est pas un mdichild.

  2. #2
    Membre Expert
    Avatar de freddyboy
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2003
    Messages
    810
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2003
    Messages : 810
    Par défaut
    tu as une propriété a ajouter, je crois que c'est IsMdiChild ou un truc comme ca, il faut la mettre à true...

    @+

  3. #3
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut Re: [C#]Feuilles MDI
    C'est normal
    Citation Envoyé par bakonu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.zone.Controls.Add(mafenetre);
    ceci ne fonctionne pas avec des contrôles dits de niveau supérieurs
    Essayes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    mafenetre.MdiParent = this; // ou this.zone
    mafenetre.Visible =true;

  4. #4
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    363
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 363
    Par défaut
    ca marche pas, MdiParent est du type Form, et mon this.zone est du type MdiClient

  5. #5
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Citation Envoyé par bakonu
    ca marche pas, MdiParent est du type Form, et mon this.zone est du type MdiClient
    oui oui c'est pour cela que je l'ai mis en commentaire donc intervient en amont en definissant IsMdiContainer puis en récupérant le MdiClient en cours de la Form pour le modifier comme tu le souhaites (tu n'auras plus besoin de creer un nouveau this.zone puisque tu l'imposera directement)

  6. #6
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    363
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 363
    Par défaut
    et j ele récupère comment le mdi par défaut?

  7. #7
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Après InitializeComponent dans le constructeur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    foreach( Control c in this.Controls)
    {
       if (c is MdiClient)
       {
          c.BackColor = Color.FromArgb(192,192,192); 
          c.Location = new Point(105,0); 
          c.Size = new Size(634,440); 
          c.Visible = true;
       }
    }

  8. #8
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    363
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 363
    Par défaut
    le changement couleur marche^^
    le visible marche^^

    mais pas le reste vv

  9. #9
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Citation Envoyé par bakonu
    le changement couleur marche^^
    le visible marche^^
    mais pas le reste vv
    que renvoit-il comme valeur par défaut de Location et Size :

  10. #10
    Membre éclairé
    Inscrit en
    Février 2004
    Messages
    363
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 363
    Par défaut
    je crois qu'on peut pas le modifier car c'est le container principale de la fenetre, mais j'ai trouver une autre manière de faire, j'utilise des splitters qui règlent en grandes parties mon problème.

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

Discussions similaires

  1. [VB6]Feuille mdi
    Par badrel dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 10/03/2006, 20h49
  2. [VB.NET]Problème pour les feuilles MDI
    Par Skieur38 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 03/02/2006, 14h10
  3. [VB]Fond d'ecran dans une feuille MDI
    Par zejo63 dans le forum VB 6 et antérieur
    Réponses: 14
    Dernier message: 23/01/2006, 17h47
  4. Comment affciher une page web dans ma feuille MDI
    Par callo dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 29/01/2005, 17h23
  5. [VB6] BorderStyle pour feuille MDI fille
    Par jacma dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 07/08/2004, 13h43

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