Visual Studio 2010 stürzt beim Öffnen eines Formulars mit einem Benutzersteuerelement im Entwurfsmodus ab

8

Folgendes ist mein Problem: Ich habe ein benutzerdefiniertes Benutzersteuerelement in meinem Windows Forms-Projekt. Ich kann es im Designer gut entwerfen. Aber sobald ich das Formular bearbeiten möchte, das das Steuerelement enthält, stürzt Visual Studio 2010 ab.

Soweit ich sehen konnte, werden der Constructor und das Load-Event des Controls beim Laden des Formulars ausgeführt.

Ich habe versucht, eine andere Instanz von VS2010 zu verwenden, um den Designer zu debuggen, konnte aber den Ort, an dem die Ausnahme auftritt, nicht finden.

Zuerst schien mein Problem, dass für das Threading.Timer -Objekt, das ich für die Initialisierung meiner Objekte verwende (zB Laden von Werten aus einer Datenbank usw.) (bei Fehler, versuche es später erneut;))), Die Callback-Funktion wurde vom Designer ausgeführt und versuchte daher auf Objekte zuzugreifen, auf die sie im Entwurfsmodus keinen Zugriff hatte. Die Initialisierung des Objekts Threading.Timer befindet sich im Load-Event. Aber selbst nachdem ich alles im Load-Ereignis kommentiert habe (außer einem try catch-Block und einem Debugger.Break() Aufruf, einen Breakpoint in der zweiten Instanz VS2010 zu haben, um den Designer zu debuggen) stürzt Visual Studio ab, sobald ich das Formular bearbeiten will enthält das Steuerelement im Entwurfsmodus.

Ich habe einige Schritte ausprobiert, die ich hier ohne eine Antwort auf mein Problem gefunden habe: Benutzerkontrolle immer stürzt Visual Studio ab

Also auch, wenn der Designer beim Parsen des Load-Events oder des Konstruktors nichts zu tun hat. Es stürzt immer noch ab.

Hat jemand eine Idee, was ich tun könnte, um zu verhindern, dass Visual Studio abstürzt und das Benutzersteuerelement ordnungsgemäß im Formular-Designer anzeigt?

Das Projekt, das die Benutzersteuerung enthält, verweist auch auf einige benutzerdefinierte Bibliotheken und ein Bibliotheksprojekt. Ich weiß nicht, ob das Problem damit etwas zu tun haben könnte.

    
Nicholas 10.08.2011, 08:59
quelle

3 Antworten

3

Irgendwie gelöst mein eigenes Problem ...

Irgendwie habe ich versucht, den Designer-Modus zu debuggen.

Das Festlegen eines Debugger.Break () im Load-Event war eine sehr schlechte Idee beim Versuch, das Formular zu öffnen, das das Benutzersteuerelement im Designermodus enthält, weil Sie Visual Studio nicht debuggen Mit einer anderen Instanz von Visual Studio stoppt dann Debugger.Break () die Anwendung und stürzt daher die Visual Studio-Instanz ab.

Am Ende konnte ich mithilfe der DesignerMode-Eigenschaft des Benutzersteuerelements verhindern, dass der Designer die Initialisierung meines threading.Timer-Objekts ausführen konnte, um das Problem auf diese Weise zu lösen.

    
Nicholas 11.08.2011, 08:53
quelle
0

Ich hatte das gleiche Problem (VS 2005), und die markierte Antwort funktionierte auch nicht für mich. Endlich konnte ich das Problem lösen, indem ich die Ordner "obj" und "bin" in meiner Lösung löschte und dann das Projekt im Freigabemodus neu erstellte. Ich hoffe, dass dies jedem hilft, der dieses Problem hat.

    
Gavin Perkins 08.05.2014 14:02
quelle
0

Bei meinem Problem ist die gesamte Lösung jedes Mal abgestürzt, wenn ich sie geöffnet habe, weil ich beim Öffnen der Lösung die schuldige Datei geöffnet habe und dadurch die ganze Lösung zum Absturz gebracht hat nicht auf die zu lösende Lösung zugreifen.

Also habe ich einen alternativen Weg gefunden, um mir nur zu erlauben, zu meiner Kodierung zurückzukehren. Es hat nicht dazu geführt, tief in Debugging-Systemereignisse zu gehen, ich denke, dass es allen Ebenen von Benutzern helfen kann, daher zu posten.

>

Ich öffnete die aspx-Datei außerhalb der Lösung, buchstäblich nur die Frontend-Code-Datei, könnte in Notepad oder einem Texteditor einschließlich VS getan werden. Den gesamten Code kommentiert (Java-Code war nicht wichtig, da nichts ihn aufruft) Die Datei wurde gespeichert und geschlossen. Öffnen Sie die Lösung erneut. Obwohl die Designer-Ansicht geöffnet wurde, stürzte sie diesmal nicht ab, da nichts zu verarbeiten war. Ich habe dann den Code in Abschnitten, verschiedenen Mengen an Code, 20 Zeilen, 100 Zeilen unkommentiert ... jedes Mal ging ich zurück in die Designer-Ansicht, um zu prüfen, ob sie abstürzen würde. Als ich fertig war (keine Abstürze!) Konnte ich von dort weitermachen, wo ich aufgehört hatte. Hoffe es hilft!

    
Dan 08.12.2015 14:44
quelle