Laden...

[erledigt] Anwendungseinstellungen mit StringDictionary

Erstellt von gelöschtem Konto vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.370 Views
Gelöschter Account
vor 13 Jahren
[erledigt] Anwendungseinstellungen mit StringDictionary

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?).

2.187 Beiträge seit 2005
vor 13 Jahren

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

0
767 Beiträge seit 2005
vor 13 Jahren

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

Gelöschter Account
vor 13 Jahren

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.

L
416 Beiträge seit 2008
vor 13 Jahren

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

Gelöschter Account
vor 13 Jahren

Achso, dann hat sich das eh erledigt, habs wohl missverstanden.