Hallo,
ich versuche ein StringDictionary als Anwendungseinstellung zu benutzen, in dem möchte ich dann gerne vom Benutzer getroffene Einstellungen Speichern.
Siehe Screen im Anhang...
Ich bekomme aber immer eine NullReferenceException, wenn ich dann das SD mit 'new' erstellen will falls es null ist, bekomme ich einen StackOverflow.
Ich wüsste nicht was ich in das Feld 'Standartwert' eintragne sollte, weil man dort nur Strings eintragen kann, welcher ja aber kein Standartwert für ein Dict sein kann.
Ich hab auch nach einiger Zeit Googlen keine passende Lösung gefunden.
Kann mir vielleicht jemand weiterhelfen (Codeausschnitt? Erklärung? Anleitung?).
Hallo DNAofDeath,
Das StringDictionary scheint sich nicht/nicht gut als XML serialisieren zu lassen.
Nimm doch lieber ein Array eines selbst erstellten Typs, das ist einfacher.
"Propertie- Datei" in C#
Abwer warum brauchst du in den Settings noch mal eine Auflistung für weitere Setting? Die Settings sind doch schon eine Liste.
Gruß
Juy Juka
Wenns an der XmlSerialisierung liegt, kannst du statt StringDictionary folgende probieren
(nicht getestet, from scratch):
public class MyStringDictionary : KeyedCollection<string,string>
{
protected override string GetKeyForItem(string item)
{
return item;
}
}
damit kannst du dann auch mit myDict["bla"] zugreifen.
loop:
btst #6,$bfe001
bne.s loop
rts
Abwer warum brauchst du in den Settings noch mal eine Auflistung für weitere Setting? Die Settings sind doch schon eine Liste.
Geschmackssache denk ich, ich finds besser ein Dict zu haben, weil ich da einfach Werte nach Belieben einbauen kann, statt immer auf die Einstellungsseite zu gehen, und da rumzufuchteln mit der Maus.
Und zu deinem Link, ich will ja eben keine externe Datei mehr haben wo das gespeichert wird, ich will das es IN der Anwendung gespeichert wird...
Ich dachte das geht so:
Typ einstellen
Name Vergeben
Drauf zugreifen
Aber anscheinend hab ich mich da geirrt...
@0815Coder
Deine Antwort hab ich nicht verstanden.
ich will das es IN der Anwendung gespeichert wird...
Du kannst Einstellungen die während der Laufzeit geändert werden nicht "IN" der Anwendungsdatei speichern. Alle Einstellungen werden in einer extra config Datei gespeichert.
siehe auch [Tutorial] Das neue Konfigurationsmodell im .NET Framework 2.0