C# System.ObjectDisposedException Wie beheben?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Was bedeutet für Dich "letztendlich"? Wenn die Möglichkeit besteht, dass ein Object beim Zugriff nicht mehr existiert, sollte man vor dem Zugriff die Existenz überprüfen.


2t3113RD3RFR4G3 
Fragesteller
 23.07.2018, 12:54

Anfangs habe ich das Fenster einfach mit .Close geschlossen, dann kam der Fehler auf und ich habe es nun auf .Dipose abgeändert, da dadurch ja eigentlich alles freigegeben werden sollte, leider funktioniert es dennoch nicht

0
2t3113RD3RFR4G3 
Fragesteller
 23.07.2018, 12:58
@Mikkey

Jetzt, ja gut. Danke für die Anmerkung, nun weiß ich was mein Fehler war. Vielen Dank für den Anstoß, habe scheinbar immer wo anders nachgesehen.

0

Um den Fehler zu beheben muss man die Variable in der Void Settings immer neu erstellen.

Aus
public static MainFrm configWindow = new MainFrm();

wird
public static MainFrm configWindow;

und aus der Methode

void Settings(object sender, EventArgs e)
        {
                if (configWindow.Visible)
                    configWindow.Activate();
                else
                    configWindow.Show();
        }

muss man 

configWindow = new MainFrm(); hinzufügen.
Woher ich das weiß:eigene Erfahrung