2016-11-11 2 views
2

Ich habe zwei Formen, Form1 und Form2. Ich habe derzeit eine Schaltfläche im Startformular (Form1), die Form2 lädt. Ich möchte, dass Form1 minimiert wird und nur Form2 angezeigt wird, sobald es geladen wird, sodass Form1 nicht im Hintergrund ist, während Form 2 angezeigt wird.So minimieren Sie ein einzelnes Windows-Anwendungsformular in C#

Bisher habe ich versucht, die Dinge wie:

this.WindowState = FormWindowState.Minimized; 

aber das Problem, das ich habe, ist, dass es Form2 auch minimiert werden verursacht. Gibt es eine Möglichkeit, speziell dafür zu sorgen, dass nur Form1 betroffen ist oder dieses Problem umgeht?

unten finden Sie meinen Code, möglicherweise habe ich einige Fehler gemacht!

Form2 add = new Form2(); 
     this.WindowState = FormWindowState.Minimized; 
     add.ShowDialog(); 

Ich hatte auch versucht, die Window hinter dem Showdialog setzen, aber es kann nicht funktionieren, da es erst nach dem Dialog funktioniert getan ausgeführt wird.

+0

Dieser Code repliziert das Problem nicht. Ich kann eine Form zeigen, während ich die andere gut ausnehme. Bitte zeigen Sie den Code Block, wo Sie Ihr Formular zeigen und minimieren Sie dieses. – Equalsk

+0

@Equalsk Ich habe meinen Beitrag bearbeitet! – bucketman

+1

Es ist, weil Sie ShowDialog verwenden, haben Sie versucht, Show? – Equalsk

Antwort

3

Ihr Problem ist auf zwei Dinge zurückzuführen.

  1. Sie verwenden ShowDialog, die Form2 als modalen Dialog startet. Hinweis: Lesen Sie gehen über modale Dialoge
  2. Sie benötigen
nach zeigt Form2 zu minimieren

Ihren Code zu dieser Änderung:

var add = new Form2(); 
add.Show(); 
WindowState = FormWindowState.Minimized; 
+0

Ah perfekt, ich habe einen schlechten Hintergrund mit C#, also nahm ich an, dass das Fenster "lief", wenn es angezeigt wurde, und es würde nicht richtig minimiert laufen. Danke, es funktioniert! – bucketman

Verwandte Themen