none
centrer un formulaire dans une MDI form RRS feed

  • Question

  • bonjour,

    pour mon application, j'ai un Mdiparent ki contient de nombreuse feuille

    1- les feuilles sont plus petite que ce du formulaire MDI,

    j'aimerais lorsqu'elle sont affiche qu'elle soit au centre du formulaire MDI.

    l'option FEnregistrementRC.StartPosition = FormStartPosition.CenterParent;

    ne le permet pas. j'ai porte mon dockstyle a none.

    merci cordialement


    Marcelle NGOUNOU
    mercredi 18 mai 2011 11:42

Réponses

Toutes les réponses

  • Bonjour,

    vos FEnregistrementRC ne sont probablement pas des MDIChildforms. Au moment que vous creeez un childform, if faut que vous mettez le mdiparent property:

    FEnregistrementRC  newchildForm = new FEnregistrementRC();

    newchildForm.StartPosition = FormStartPosition.CenterParent

    newchildForm.mdiparent = MonMDIParentForm;

    newchildForm.Show();

    Quand FEnregistrementRC.StartPosition = FormStartPosition.CenterParent, le chilform apparaitera au milieu du mdiform.


    Regards, Nico
    mercredi 18 mai 2011 12:07
  • bonjour Nico, merci pour tes explication, j ai pas d'option newchildform dans mon code je joins le code entier de la creation du formulaire afin que tu puisse m expliquer comment je fais

                 Form FInventaireStock = null;

                foreach (Form UneForm in this.MdiChildren)
                {
                    if (UneForm.GetType() == typeof(FormInventaireStock ))
                    {
                        UneForm.WindowState = FormWindowState.Normal;
                        UneForm.Activate();
                        FInventaireStock = UneForm;
                        break;
                    }
                }
                    if (FInventaireStock == null)
                    {
                        //La fenêtre n'est pas ouverte on la créée
                        FInventaireStock = new FormInventaireStock();
                        FInventaireStock.MdiParent = this;
                        FInventaireStock.Dock = DockStyle.None;
                        FInventaireStock.StartPosition = FormStartPosition.CenterParent;
                        FInventaireStock.Show();
                    }
                    else
                    {
                        //La fenêtre est ouverte on la place au premier plan
                        FInventaireStock.WindowState = FormWindowState.Normal;
                        FInventaireStock.Activate();
                    }

     

     

    cordialement


    Marcelle NGOUNOU
    jeudi 19 mai 2011 08:39
  • Marcelle,

    remplacez tout ce code avec ce qu'il y a ici:

     

                        //La fenêtre n'est pas ouverte on la créée

                        Form FInventaireStock = new FormInventaireStock();
                        FInventaireStock.MdiParent = this;
                        FInventaireStock.StartPosition = FormStartPosition.CenterParent;
                        FInventaireStock.Show();

     


    Regards, Nico
    jeudi 19 mai 2011 10:11
  • Bonjour Nico,

    Merci pour ton aide, mais ceci ne centre toujours pas  mon formulaire!

    cordialment

     


    Marcelle NGOUNOU
    vendredi 20 mai 2011 11:10
  • Bonjour,

    CenterParent est utilisé pour centrer une forme au sein du parent lorsque ouvert comme une boîte de dialogue (ShowDialog). CenterScreen est utilisée pour ouvrir un MDIChild dans le Centre du formulaire parent - qui constitue « l’écran » de MDIChild, donc il faut utiliser :

     

    FInventaireStock.StartPosition = FormStartPosition.CenterScreen;

     

    Bonne journée,

    Cipri


    Suivez MSDN sur Twitter   Suivez MSDN sur Facebook


    Ciprian DUDUIALA, MSFT  
    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    lundi 23 mai 2011 09:15
  • Bonsoir

    Merci Ciprian

     


    Marcelle NGOUNOU
    jeudi 26 mai 2011 20:20