Wann immer ich die Dispose
Methode auf einem Windows Forms-Formular (abgeleitet von System.Windows.Forms.Form), um es zu schließen, wird die Dispose
Methode wird abgeschlossen, indem die Ressourcen freigegeben und das Formular entsorgt wird.
Ich habe Laufzeitobjekte wie Textboxen wie unten:
Textbox Tb = new Textbox();
Der Benutzer kann neue Textboxen dynamisch erstellen. Ich möchte, dass die Textfelder, die Daten enthalten, erhalten bleiben, und die, die leer sind, entfernt werden. Wenn ich die Dispose
Methode auf die leeren Textfelder anwenden, sieht es zur Laufzeit so aus, als ob sie entsorgt werden, aber im Allgemeinen sind sie einfach unsichtbar.
Also:
-
Was ist der Unterschied zwischen dem Aufruf der Dispose-Methode für Textfelder und für von Forms abgeleitete Klassen?
-
Warum wird ein Formular beim Aufruf von z.B.
Form1.Dispose();
und warum nicht Textfelder zur Laufzeit wie unten?if (tb.text=="") tb.Dispose();