Frage

WinForms haben diese drei Kästchen in der rechten oberen Ecke, dass minimieren, maximieren und schließen Sie das Formular. Was ich möchte in der Lage zu tun, ist das Minimieren und zu Maximieren, zu entfernen, während die Nähe zu halten.

ich, was auch die Nähe, um die Form zu minimieren, anstatt sie zu schließen.

Wie kann dies geschehen?

War es hilfreich?

Lösung

Die Form hat zwei Eigenschaften genannt MinimizeBox und MaximizeBox, beide zu false gesetzt.

Um das Formular Schließen zu stoppen, behandeln Sie das FormClosing Ereignis und Satz e.Cancel = true; dort und danach, Satz WindowState = FormWindowState.Minimized;, das Formular zu minimieren.

Andere Tipps

Bind ein Handler zum FormClosing Ereignis, dann Satz e.Cancel = true, und stellen Sie die Form this.WindowState = FormWindowState.Minimized.

Wenn Sie das Formular überhaupt wollen eigentlich in der Nähe, machen eine Klasse weite boolean _close und in der Handler, Satz e.Cancel zu !_close, dass so, wenn der Benutzer die X auf dem Fenster klickt, es lässt sich nicht schließen, aber Sie können noch in der Nähe es (ohne es nur zu töten) mit close = true; this.Close();

(Und meine Antwort komplett zu machen) Satz MaximizeBox und MinimizeBox Formulareigenschaften False.

Set MaximizeBox und MinimizeBox Formulareigenschaften False

Rechtsklick das Formular, das Sie wollen, dass sie verstecken auf, wählen Controls -.> Eigenschaften

Eigenschaften Satz

  • Control Box -> False
  • Minimieren Box -> False
  • Maximize Box -> False

Sie tun dies im Designer.

Sie können einfach deaktivieren Maximierungs innen Form Konstruktor.

 public Form1(){
     InitializeComponent();
     MaximizeBox = false;
 }

minimieren beim Schließen.

private void Form1_FormClosing(Object sender, FormClosingEventArgs e) {
    e.Cancel = true;
    WindowState = FormWindowState.Minimized;
}

Wie Form zu machen, zu minimieren, wenn Schließung wurde bereits beantwortet, aber wie auf Entfernen die Schaltflächen Minimieren und Maximieren nicht.
FormBorderStyle: FixedDialog
MinimizeBox: false
MaximizeBox: false

public Form1()
{
InitializeComponent();
//this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.MinimizeBox = false;
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top