GELÖST C# - OpenFileDialog lässt Applikation einfrieren

Diskutiere C# - OpenFileDialog lässt Applikation einfrieren im Programmierung Forum im Bereich Software Forum; Hallo, ich habe ein merkwürdiges Problem... ich habe folgenden Code: OpenFileDialog FileDia = new OpenFileDialog(); FileDia.Filter =...
B

bluefisch200

Threadstarter
Mitglied seit
18.10.2007
Beiträge
2.463
Hallo, ich habe ein merkwürdiges Problem...

ich habe folgenden Code:
Code:
OpenFileDialog FileDia = new OpenFileDialog();
            FileDia.Filter = "dll files (*.dll)|*.dll";
            if (FileDia.ShowDialog() == DialogResult.OK)
            {
Sobald der Code bei der ShowDialog() Methode angekommen ist friert die gesammt Applikation ein...ergibt für mich keinen Sinn...kann da wer helfen?
 
DiableNoir

DiableNoir

Mitglied seit
18.01.2004
Beiträge
6.069
ShowDialog wird von der Form-Klasse geerbt und das "Einfrieren" ist Absicht. Mit dieser Methode wird nämlich eine Form modal angezeigt. Das ist übrigens bei solchen Standarddialogen wie "Datei öffnen/speichern" bei jedem Programm so und hat auch seinen Sinn. ;)

Werden modale Dialoge geschlossen, also zb durch einen Klick auf OK, dann läuft auch dein Hauptmenü wieder an der Stelle nach ShowDialog weiter.

Der Code den du übrigens gepostet hast, läuft NUR wenn der Code auch an dieser Stelle angehalten wird. Solange der Dialog noch läuft, hat es keinen Sinn abzufragen, ob der OK-Button gedrückt wurde.

Wenn du einen Dialog nicht modal anzeigen lassen willst, dann musst du stattdessen die Methode Show() verwenden.
 
B

bluefisch200

Threadstarter
Mitglied seit
18.10.2007
Beiträge
2.463
Nein, ich weis dass ShowDialog() die Form blockiert...mein Problem ist dass der Dialog gar nicht angezeigt wird sondern die gesammt Applikation volkommen einfriert und nur noch per Taskmanager beendet werden kann...na ja hab mit Shadow Copy jetzt ne ältere Version des Projekts hergestellt...da ging noch alles...habe dazwischen nie was am Code verändert ausser diesen Dialog einzufügen...nun geht alles gut, keine Ahnung was da abging...
 
DiableNoir

DiableNoir

Mitglied seit
18.01.2004
Beiträge
6.069
Naja, dem würde ich schon nachgehen. Ich tippe aber mal, dass vorher ein Netzlaufwerk oder so geöffnet war und der Dialog versucht hat wieder darauf zuzugreifen. Windows braucht oft sehr lange bis es endlich mal festgestellt hat, dass eine Freigabe gar nicht erreichbar ist.

Wenn man sich nicht mehr sicher ist, was alles geändert wurde ist übrigens eine Versionsverwaltung hilfreich. ShadowCopys sind für diese Aufgabe nicht geeignet, auch nicht wenn man ältere Codeversionen wieder braucht.

Generell würde ich empfehlen, dass du eine Versionsverwaltung verwendest. Auch bei kleinen Projekten und selbst wenn nur ein Programmierer an einem Rechner sitzt hat so etwas seine Berechtigung. Es gibt immer wieder Situationen in denen man Dinge ausprobieren möchte, aber noch nicht weiß ob es funktionieren wird. Mit Hilfe einer Versionsverwaltung legt man dann einfach eine Verzweigung (bzw. Branch) an und fügt sie erst dann in den Hauptzweig ein, wenn der Code für gut befunden wurde.

Außerdem kannst du genau ermitteln, welche Codestellen du verändert hast und alte Zustände schnell wiederherstellen. ;)

Ich würde hier zB das Gespann Subversion, TortoiseSVN und evtl. noch dazu AnkSVN empfehlen.
 
B

bluefisch200

Threadstarter
Mitglied seit
18.10.2007
Beiträge
2.463
Ich würde hier zB das Gespann Subversion, TortoiseSVN und evtl. noch dazu AnkSVN empfehlen.
Schau ich mir Heute Abend an :)
Danke :up

Für den privatbereich hat mir bis jetzt Shadow Copy gereicht ;)
 
Thema:

C# - OpenFileDialog lässt Applikation einfrieren

C# - OpenFileDialog lässt Applikation einfrieren - Ähnliche Themen

  • Surface Pro 6 mit WIn 10 lässt sich nicht in Werkszustand zurücksetzen

    Surface Pro 6 mit WIn 10 lässt sich nicht in Werkszustand zurücksetzen: Wie oben beschrieben bricht der an sich selbstverständliche Vorgang irgendwann ab und keine Änderungen werden vorgenommen. Da ich das Gerät...
  • Gerät lässt sich nicht mit Microsoft-Konto verknüpfen

    Gerät lässt sich nicht mit Microsoft-Konto verknüpfen: Hallo zusammen, an sich geht es darum, dass ich die aktuelle Itunes-Version herunterladen möchte. Dies soll ich über den microsoft-store machen...
  • Ordner lässt sich nicht löschen, umbenennen, "Element befindet sich nicht mehr in.."

    Ordner lässt sich nicht löschen, umbenennen, "Element befindet sich nicht mehr in..": Hallo, auf einem USB-Laufwerk ein Ordner. Lässt sich nicht löschen, umbenennen; Fehler:"Element befindet sich nicht mehr in ".. Pfad.. Dazu...
  • WIN 10 Update läßt nicht mehr funktionierendes Midiinterface zurück

    WIN 10 Update läßt nicht mehr funktionierendes Midiinterface zurück: Sehr langes MS Update Win10 am 20.2.20. Danach ging mein M-Audio Midiinterface Midisport 2x2 nicht mehr, 2 AudioplugIns initialisierten sich...
  • GELÖST OpenFileDialog

    GELÖST OpenFileDialog: Hallo erst einmal. Ich schreibe gerade ein Programm welches meinen Arbeitskollegen die Arbeit abnimmt die von ihm erstellten *.mcr Dateien zum...
  • Ähnliche Themen

    Oben