Ik zit te suf te zoeken en dingen uit te proberen, maar kom er niet uit. Misschien dat jullie het zien...
Ik heb een class, welke ICloneable implementeert en meerdere (sub) classes heeft:
Ergens in mn programma doe ik het volgende:
Wanneer de functie terug keert (en true geeft), krijg ik de volgende fout:
Wat ik probeer is:
wanneer de gebruiker het object (tmpClass) heeft gewijzigd en ok heeft geklikt,
de waardes van tmpClass in myClass te zetten.
(Een aantal controls op het form zijn weer gebound aan tmpClass)
Iemand een idee wat ik hier fout doe?
Ik heb een class, welke ICloneable implementeert en meerdere (sub) classes heeft:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| [Serializable()] public class ClassA: ICloneable, IDisposable { [field:NonSerializable] public event SomeEventHandler MyEventHandler; private Int32 _SomeId; [Serializable()] public class ClassB: EenAnderClass (<-- ook gemarkeerd als serializable) { private Int32 _InternalId; private Decimal _Value; ... } [Serializable()] public class ClassC { private Int32 _InternalId; private String _Value; ... } public object Clone() { ... } } |
Ergens in mn programma doe ik het volgende:
C#:
1
2
3
4
5
6
7
8
9
10
11
| (myClass is ergens anders al geinstantieerd/gecreeerd etc) private void Button_Click(Object sender, EventArgs e) { ClassA tmpClass = (MyClass)myClass.Clone(); if (FunctieAanRoep(tmpClass)) { myClass = (MyClass)tmpClass.Clone(); } } |
Wanneer de functie terug keert (en true geeft), krijg ik de volgende fout:
code:
1
2
3
| Het type System.ComponentModel.ReflectPropertyDescriptor in assembly System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 is niet als serialiseerbaar gemarkeerd. |
Wat ik probeer is:
wanneer de gebruiker het object (tmpClass) heeft gewijzigd en ok heeft geklikt,
de waardes van tmpClass in myClass te zetten.
(Een aantal controls op het form zijn weer gebound aan tmpClass)
Iemand een idee wat ik hier fout doe?
Wetten zijn gemaakt om gebroken te worden