Laden...

Fehler bei der Codegenerierung in VS: Nicht als serialisierbar gezeichnet (ItemCollection)

Erstellt von Aratar vor 13 Jahren Letzter Beitrag vor 11 Jahren 8.266 Views
A
Aratar Themenstarter:in
118 Beiträge seit 2009
vor 13 Jahren
Fehler bei der Codegenerierung in VS: Nicht als serialisierbar gezeichnet (ItemCollection)

Hallo,

Ich hab ein Problem mit meinem Kalender Kontrol. Bisher hatte ich noch kein Problem, jetzt kommt aber immer, wenn ich ihn debuggen will folgende Fehlermeldung:

Fehler bei der Codegenerierung für die Einträge-Eigenschaft. Fehler: Der Typ "KalenderTestAnwendung.ItemCollection" in Assembly "KalenderControl, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" ist nicht als serialisierbar gekennzeichnet.

Der betroffene Codeabschnitt soll anscheinend folgender sein:

public class ItemCollection
    {
        public DateTime Datum { get; set; }
        public string Text { get; set; }
        public Color BackColor { get; set; }
        public Color BorderColor { get; set; }
        public bool Visible { get; set; }
        
        public List<Rectangle> Regions { get { return regions; } set { if (value!=null) regions = value; } }

        private List<ItemCollection> lst = new List<ItemCollection>();
        private List<Rectangle> regions = new List<Rectangle>();
        private List<ItemCollection> templst = new List<ItemCollection>();
        public List<ItemCollection> Einträge { get { return lst; } set { lst = value; } }

Ich hab es mit [Serializeable] probiert, hat aber nicht geklappt. Weiss jemand, was genau das Problem ist?

Gruss Aratar

6.911 Beiträge seit 2009
vor 13 Jahren

Hallo,

Ich hab es mit [Serializeable] probiert, hat aber nicht geklappt. Weiss jemand, was genau das Problem ist?

Wie äußert sich das? Welcher Fehler kommt dann?

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

A
Aratar Themenstarter:in
118 Beiträge seit 2009
vor 13 Jahren

Nichts passiert, es kommt immer noch die gleiche Fehlermeldung.

5.742 Beiträge seit 2007
vor 13 Jahren

Was genau hast du als "Serializable" markiert?

A
Aratar Themenstarter:in
118 Beiträge seit 2009
vor 13 Jahren

Die ItemCollection-Klasse.

Gruss Aratar

C
112 Beiträge seit 2009
vor 13 Jahren

Hi,

alle Member Deiner Klasse müssen ebenfalls serialisierbar sein, möglicherweise liegt da das Problem.

Grüße

Christian

edit: sinnentstellender Rächtschraibfeller 😃

1.552 Beiträge seit 2010
vor 13 Jahren

Hallo an alle,

du willst ein Color serialisieren. Dadurch dass Color keine Public Setter hat kannst du dies nicht ohne Umstände (XML)serialisieren

Gruß Michael

Mein Blog
Meine WPF-Druckbibliothek: auf Wordpress, myCSharp

6.911 Beiträge seit 2009
vor 13 Jahren

Hallo Michael,

hier gehts um binär serialisieren. Der ist genügsamer und braucht nur die privaten Felder 😉

Die Color-Struktur ist mit dem SerializableAttribute gekennzeichnet. Das Problem muss also wo anders liegen.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

1.552 Beiträge seit 2010
vor 13 Jahren

hier gehts um binär serialisieren

Danke, das hatte ich aus dem bisherigen Kontext nicht erkennen können 😃

Mein Blog
Meine WPF-Druckbibliothek: auf Wordpress, myCSharp

A
Aratar Themenstarter:in
118 Beiträge seit 2009
vor 13 Jahren

Wie ich gerade gemerkt habe, trifft der Fehler auf, sobald man etwas beim Kalender ändert, zum Beispiel die Grösse. Kalender Control

Gruss Aratar

6.911 Beiträge seit 2009
vor 13 Jahren

Hallo,

dann du hast du aber nicht

Der betroffene Codeabschnitt gezeigt 😉
Darin ist nichts vom Kalender-Control zu sehen.

Wie hast du denn das bemerkt? Ohne weitere Infos können wir nur sehr schwer helfen - und raten ist ja nicht unbedingt zielführend.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

A
Aratar Themenstarter:in
118 Beiträge seit 2009
vor 13 Jahren

Naja, ich dachte aufgrund der Fehlermeldung, dass dies der betroffene Codeabschnitt ist, da ja stand "Einträge"-Eigenschaften. (Diese Eigenschaft befindet sich in diesem Codeabschnitt)

Gemerkt hab ich es erst gerade vorhin, als ich die Grösse des Kalender-Controls im Designer ändern wollte, da kam direkt die Fehlermeldung. Diese Fehlermeldung kommt aber auch sonst, wenn man zum Beispiel einen Button hinzufügt (zumindest wenn er sich auf dem Kalender-Control befindet).

Gruss Aratar

S
14 Beiträge seit 2012
vor 11 Jahren

Hallo,

erstmal 'sorry' dass ich den thread nochmal so plötzlich lebendig mache, aber ich
habe das selbe problem und komme einfach nicht weiter. Ich bin momentan dabei
meine eigene kleine textbox zu bauen, welche auch mit syntax-hervorhebung
arbeiten soll. Nun habe ich mir ein kleines 'struct' erstellt welches ich 'Styles'
genannt habe. Das ganze sah dann so aus:


/// <summary>
/// Style struct
/// </summary>
public struct Style
{
/// <summary>
/// Defines the pattern for the regex filter
/// </summary>
public string RegexPattern { get; set; }
/// <summary>
/// Defines the forecolor of the matched text
/// </summary>
public Color ForeColor { get; set; }
/// <summary>
/// Defines the offset for the index
/// </summary>
public int IndexOffset { get; set; }
/// <summary>
/// Defines the offset for the length
/// </summary>
public int LengthOffset { get; set; }
}

Im eigentlichen textbox control habe ich nun eine liste erstellt, welche ich styles
genannt habe. Wenn ich nun das usercontrol auf eine windows form ziehe via
designer oder versuche es per code selber zu implementieren bekomme ich eben
jene fehlermeldung.

Nun habe ich einige lösungswege versucht. Doch keiner hat bisher geholfen. Selbst
wenn ich jeglichen code auskommentiere lässt sich das projekt nicht mehr
erstellen.

Ich hoffe sehr hier hilfe zu finden. Bei bedarf kann ich auch den gesammten code
meiner textbox hier posten.