none
Afficher fenêtre minimisé

    Question

  • Bonjour, j'ai une Form1 que je minimise (Windowstate), afin d'afficher une form2 (form.show). J'aimerai qu'a la fermeture de la form2, la form1 réapparaisse, des idées ?

    Cordialement,

    Solber.

     
    samedi 13 mai 2017 23:16

Réponses

  • Bonjour j'ai trouvé une solution un peu moche mais bon, pour faire simple , j'ai une public bool accessible depuis ma form2 , il me suffit de changer ça valeur pour qu'un timer dans la form1 effectue un windowstate normal , et un this.focus puis reset la bool et se désactive.

    Merci a tous pour votre aide.

    • Marqué comme réponse Solber dimanche 14 mai 2017 11:49
    dimanche 14 mai 2017 11:49

Toutes les réponses

  • Tu passes la Form1 en paramètre de la Form2

    et tu la restaures à la fermeture (mainForm étant le paramètre de Form2 ici, représentant donc Form1)

    private void Form2_FormClosed(object sender, FormClosedEventArgs e)
    {
        mainForm.WindowState = FormWindowState.Normal;
    }

    dimanche 14 mai 2017 08:09
  • Bonjour,

    j'ai essayé ton bout de code, malheureusement ma Form1 reste minimisé, voici mon code :

    Form1 f = new Form1();
    
    private void label1_Click(object sender, EventArgs e)
    { 
        this.Close();   
    }
    //path étant ma form2
    private void path_FormClosed(object sender, FormClosedEventArgs e)
    {
         f.WindowState = FormWindowState.Normal;
    }

    Cordialement,

    Solber.


    • Modifié Solber dimanche 14 mai 2017 09:26
    dimanche 14 mai 2017 09:26
  • Bonjour,

    Et en remplacant:

    private void path_FormClosed(object sender, FormClosedEventArgs e)

    par:

    private void path_FormClosing(Object sender, FormClosingEventArgs e)

    Cordialement.


    IT Technician, IT Support, .NET Developer

    dimanche 14 mai 2017 09:46
  • Le test que j'ai fait qui marche chez moi (Windows 10, VS 2015) =>

    public partial class Form2 : Form
    {       
            private Form1 mainForm = null;
            public Form2(Form callingForm)
            {
                InitializeComponent();
                mainForm = callingForm as Form1;
                CenterToScreen();
            }       
    
            private void Form2_FormClosed(object sender, FormClosedEventArgs e)
            {
                mainForm.WindowState = FormWindowState.Normal;
            }
    }
    
    // Appel de Form2 à partir de Form1
    private void button1_Click(object sender, EventArgs e)
    {
        this.WindowState = FormWindowState.Minimized;
        Form2 secondForm;
        secondForm = new Form2(this);
        secondForm.Show();
        secondForm.Activate();
    }


    dimanche 14 mai 2017 10:05
  • Bonjour j'ai essayé vos deux solution plus quelques autres du genre appeler une fonction sur Form1, avec un timer .. Mais rien n'y fait , la Form1 reste minimisé et refuse de s'agrandir, des idées ?

    PS : J'utilise Windows 10 / .NET 4.5.2 / Et VS 2015.

    Cordialement,

    Solber



    • Modifié Solber dimanche 14 mai 2017 11:30
    dimanche 14 mai 2017 11:29
  • Bonjour j'ai trouvé une solution un peu moche mais bon, pour faire simple , j'ai une public bool accessible depuis ma form2 , il me suffit de changer ça valeur pour qu'un timer dans la form1 effectue un windowstate normal , et un this.focus puis reset la bool et se désactive.

    Merci a tous pour votre aide.

    • Marqué comme réponse Solber dimanche 14 mai 2017 11:49
    dimanche 14 mai 2017 11:49