Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Einführung in die C#-Methode zum Schließen eines untergeordneten Fensters, ohne das untergeordnete Fensterobjekt freizugeben.

Detaillierte Einführung in die C#-Methode zum Schließen eines untergeordneten Fensters, ohne das untergeordnete Fensterobjekt freizugeben.

黄舟
黄舟Original
2017-03-27 11:49:191962Durchsuche

Der Editor unten stellt Ihnen eine C#-Methode zum Schließen eines untergeordneten Fensters vor, ohne das untergeordnete Fenster--Objekt freizugeben. Der Herausgeber findet es ziemlich gut, deshalb werde ich es jetzt mit Ihnen teilen und es allen als Referenz geben. Folgen wir dem Editor und werfen wir einen Blick darauf.

Während des Debugging-Prozesses der Online-Scanning-Kamera müssen Sie eine Debugging-Schnittstelle öffnen, um die Position zu konfigurieren. Nach dem Debuggen besteht eine übliche Methode darin, die Debugging-Parameter zu speichern und beim nächsten Start zu laden. Eine andere einfache Möglichkeit besteht darin, das Programm direkt mit diesem Parameter auszuführen. Im letzteren Fall muss daher folgende Funktion implementiert werden: Selbst wenn das Debugging-Fenster geschlossen ist, wird sein Fensterobjekt nicht freigegeben. Das Objekt seines Debug-Fensters wird erst zerstört, wenn sein Hauptfenster geschlossen wird.

1 Instanziieren Sie das untergeordnete Fenster im Hauptfenster.

Instanziieren Sie das untergeordnete Fenster im Hauptfenster, anstatt das untergeordnete Fenster in der Schaltfläche zu instanziieren Fensterobjekt.

Form2 f2 = new Form2();

2 Hauptfenster über Schaltflächen anzeigen

Was in der Schaltfläche implementiert werden muss, ist die Anzeige des Fenster

private void Config_Click(object sender, EventArgs e)
    {
      f2.Show();
    }

3 Methode zum Schließen des untergeordneten Fensters, ohne das untergeordnete Fensterobjekt freizugeben

Nach Rückfrage und Überprüfung ist dies möglich Ändern Sie die Dispose-Methode im untergeordneten Fenster von. Ändern Sie es wie folgt:

 protected override void Dispose(bool disposing)
    {
      Hide();
      //if (disposing && (components != null))
      //{
      //  components.Dispose();
      //}
      //base.Dispose(disposing);
    }

4 Zerstören Sie das untergeordnete Fensterobjekt, wenn das übergeordnete Fenster geschlossen wird

Aufgrund der Notwendigkeit, das zu zerstören Untergeordnetes Fenster, wenn das übergeordnete Fenster geschlossen ist. Fügen Sie daher einen Aufruf der Zerstörungsfunktion des untergeordneten Fensters f2 in der Schließaktion FormClosed des übergeordneten Fensters hinzu.

 private void Form1_FormClosed(object sender, FormClosedEventArgs e)
    {
      f2.Close();
    }

Die in der Unterfensterklasse hinzugefügte Schließfunktion lautet wie folgt:

 public void Close()
    {

      this.Dispose();

    }

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die C#-Methode zum Schließen eines untergeordneten Fensters, ohne das untergeordnete Fensterobjekt freizugeben.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn