xbu58
Mitglied
Hallo
Ich verwende innerhalb einer Kompnente (vom Type System.ComponentModel.Component) eine Liste um Element innerhalb der Komponente abzulegen. Die Elemente bestehen aus einer Klasse, welche ich mit [Serializable] definiert habe:
Soweit funktioniert alles sauber. Ich kann in Eigenschafts-Editor von VS problemlos neue Elemente in die Dialogs-Instanz einfügen, löschen oder ändern.
Das Problem liegt darin, dass diese Elemente beim Speichern im VS in eine Resource-Datei Form1.resx und nicht in die Form1.Designer.cs abgelegt werden. Das wäre an und für sich noch nicht so tragisch. Das Hauptproblem ist jedoch, dass die Daten binär abgelegt werden.
Da ich für die Sprachübersetzung auf diese Daten zugreifen muss, ist das nicht brauchbar. Wie muss ich die Deklaration machen, dass diese Liste nicht als Bin, sondern als lesbarer text gespeichert wird?
Danke und Gruss
Xaver
Ich verwende innerhalb einer Kompnente (vom Type System.ComponentModel.Component) eine Liste um Element innerhalb der Komponente abzulegen. Die Elemente bestehen aus einer Klasse, welche ich mit [Serializable] definiert habe:
C#:
public class Dialogs : System.ComponentModel.Component
{
....
internal List<DialogDataClass> dialogData = new List<DialogDataClass>();
....
public List<DialogDataClass> DialogData
{
get { return dialogData; }
set { dialogData = value; }
}
}
[Serializable]
public class DialogDataClass
{
internal string name = "";
internal string title = "";
internal string text = "";
.....
[Category("Design")]
[Description("Name der Dialog-Box")]
[DisplayName("(Name)")]
public string Name
{
get { return name; }
set { name = value; }
}
[Category("Data")]
[Description("Titel der Dialog-Box")]
public string Title
{
get { return title; }
set { title = value; }
}
[Category("Data")]
[Description("Text der Dialog-Box")]
public string Text
{
get { return text; }
set { text = value; }
}
....
}
Soweit funktioniert alles sauber. Ich kann in Eigenschafts-Editor von VS problemlos neue Elemente in die Dialogs-Instanz einfügen, löschen oder ändern.
Das Problem liegt darin, dass diese Elemente beim Speichern im VS in eine Resource-Datei Form1.resx und nicht in die Form1.Designer.cs abgelegt werden. Das wäre an und für sich noch nicht so tragisch. Das Hauptproblem ist jedoch, dass die Daten binär abgelegt werden.
C#:
<data name="dialogs1.DialogData" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAEBNc2dCb3hMaWIsIFZlcnNpb249MS4wLjAuMCwgQ3VsdHVyZT1u
ZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1udWxsBAEAAACBAVN5c3RlbS5Db2xsZWN0aW9ucy5HZW5lcmlj
.....
</value>
</data>
Danke und Gruss
Xaver
Zuletzt bearbeitet von einem Moderator: