Type Initializer Exception

29/01/2008 - 11:53 von Stefan Offermann | Report spam
Hallo,

eine GUI-Komponente kann nicht mehr im Designer angezeigt werden. Als
Warnung erhalte ich lediglich

"The type intializer for 'Foo.Bar.UserControl' threw an exeption".

Na danke dass da weder die Klasse der Exception noch die Zeile steht.
Das macht das ganze nicht grad einfach zu debuggen. *grr*

Kann es sein dass die Ausnahme bei den Members auftritt? Oder bei den
Properties? Falls ja muss ich da meinen Fehler suchen, allerdings habe
ich bei den kritischen Properties folgendes eingebaut:

public int KritischeEigenschaft {
set {
if (this.DesignMode) {
return;
}
// Tue was, welches zur Designzeit Ausnahmen werfen kann
}
}

Kann ich denn irgendwie zur Designzeit herausbekommen, welche Ausnahme
geworfen wird und in welcher Zeile? Das wàre schon hilfreich.

Ich weiß auch nicht genau *wo* ich jetzt suchen soll, um die Ausnahme zu
finden.

Gruß,
Stefan
student of geoinformatic

ifgi - institute for geoinformatics
www.ifgi.de
 

Lesen sie die antworten

#1 Frank Dzaebel
29/01/2008 - 12:55 | Warnen spam
Hallo Stefan,

     if (this.DesignMode) {



DesignMode gibt nicht immer das zurück,
was Du evtl. denkst, verfolge die Threads in dieser
Gruppe dazu.



Kann ich denn irgendwie zur Designzeit herausbekommen, welche Ausnahme
geworfen wird und in welcher Zeile? Das wàre schon hilfreich.
Ich weiß auch nicht genau *wo* ich jetzt suchen soll, um die Ausnahme zu
finden.



Du kannst UserControls debuggen!
- Das UserControl muss in einem eigenen Projekt (DLL) liegen.
- Dann in den Eigenschaften dieses Projektes die Entwicklungsumgebung
(Devenv.exe) als Startprojekt angeben
- Projekt im Debug-Modus starten -> eine zweite Instanz der
Entwicklungsumgebung wird geöffnet
- In dieser Instanz das User-Control in einem anderen Projekt (z.B.
Windows-Anwendung) nutzen, in der ersten Debuggen.


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen