Forums Neueste Beiträge
 

WinForm: UI-Attribut, um Property vor Codegenerierung zu verbergen

17/03/2009 - 15:00 von Andreas | Report spam
Hallo,

ich habe eine Klasse, die von UserControl abgeleitet ist. Diese
verwende ich als Basisklasse für meine Usercontrols. Da hinein habe
ich nun eine Property gepackt, die Probleme bei der Codegenerieung
verursacht. Im Getter der Property werden ein paar wesentliche
Arbeiten durchgeführt, die wàhrend des Designtime nicht funktionieren
können. Wie es aber aussieht, wird genau dies gemacht.
Beim Anzeigen vom Entwurfsansichen oder anderen UI-Designarbeiten
bekomme ich die Fehlermeldung

"Fehler bei der Codegenerierung der AssignedObjekt-Eigenschaft.
Fehler: Der Eigenschaftenaccesssor AssignedObjekt für das ucMyControl-
Objekt hat folgende Ausnahme verursacht. Der Objektverweis wurde nicht
auf eine Objektinstanz festgelegt."

Ich habe die Property schon mit dem Attribut Browsable(false)
versehen. Das àndert an der Codegenerierung leider nichts. Gibt es
denn ein Attribut, was das verhindert?

Andreas
 

Lesen sie die antworten

#1 Elmar Boye
17/03/2009 - 17:22 | Warnen spam
Hallo Andreas,

"Andreas" schrieb ...
ich habe eine Klasse, die von UserControl abgeleitet ist. Diese
verwende ich als Basisklasse für meine Usercontrols. Da hinein habe
ich nun eine Property gepackt, die Probleme bei der Codegenerieung
verursacht.
"Fehler bei der Codegenerierung der AssignedObjekt-Eigenschaft.
Fehler: Der Eigenschaftenaccesssor AssignedObjekt für das ucMyControl-
Objekt hat folgende Ausnahme verursacht. Der Objektverweis wurde nicht
auf eine Objektinstanz festgelegt."

Gibt es denn ein Attribut, was das verhindert?



Das Serialisieren kann Du mit dem Attribut
http://msdn.microsoft.com/de-de/lib...ibute.aspx

auf Hidden setzen.

Eine Alternative ist eine bool ShouldSerializeAssignedObject()
Methode, die immer (oder bei gewissen Konstellationen) false liefert.

Mehr dazu: http://msdn.microsoft.com/de-de/lib...71834.aspx
"Übersicht über die Designerserialisierung"

Gruß Elmar

Ähnliche fragen