2013-09-23 17 views
8

Ich möchte Konfigurationsdatei .settings verwenden, um diese Struktur zu speichern:in Settings.settings benutzerdefinierten Typ hinzufügen

struct sR22Protocole 
{ 
    Int32 inputkey; 
    Int32 outputkey; 
    Int32 voltage; 
    Int32 Ohm; 
    Int32 Correction; 
}; 

Im Einstellungen Designer kann ich verschiedene Arten hinzufügen, aber es zeigt nicht, meine Struktur in der Abschnitt zum Durchsuchen. Gibt es eine Möglichkeit, dass der Designer Zugriff auf meine Struktur hat? Wenn nein, Gibt es eine Möglichkeit, es programmatisch hinzuzufügen?

Antwort

4

Gehen Sie einfach in die Such Abschnitt und geben Sie Ihre Struktur, Klasse oder Enum Namen, während er durch den Namespace des Typs prefixing . Dann würde es auch im Dropdown für Ihre nächsten Anwendungen hinzugefügt werden.

In Ihrem Beispiel: YourTypeNamespace.sR22Protocole

+0

Können Sie etwas mehr erklären? –

+0

Welche Version von Visual Studio verwenden Sie? Ich habe das gerade auf VS2013 Express mit einem Enum versucht und es hat nicht funktioniert. (Es gibt ein "Typ 'X' ist nicht definiert." Fehler.) – jmbpiano

+0

Es funktionierte mit VS 2010 Express und einem benutzerdefinierten Aufzählungstyp. – Pollitzer

4

muß Ihre Art hat ein SettingsSerializeAs() Attribut. Ein ENUM-Parameter vom Typ SettingsSerializeAs gibt an, wie der Wert serialisiert werden, sind die möglichen Werte:

  • String
  • Xml
  • Binary
  • ProviderSpecific

Da dieses Attribut kann nur sein Auf Klassen-Typen angewendet, muss Ihr eigener Typ eine Klasse sein.

Zweitens muss der Typ einen parameterlosen Konstruktor haben. Dies liegt daran, dass, wenn für die Einstellung in der App.config-Datei kein Wert angegeben ist, der Standardwert des Typs der Einstellung der Einstellung zugewiesen wird.

Wenn Sie Ihre Klasse gerade deklariert haben, akzeptiert der Designer den Typ nur, wenn Sie Ihre Lösung erstellt haben.

Verwandte Themen