2010-05-23 13 views

risposta

34

Ho scoperto che non è possibile salvare direttamente un List<string> nelle impostazioni dell'applicazione, ma ho visto che posso salvare un StringCollection.

E here ho scoperto che è molto semplice convertire da un StringCollection ad un List<string>

var list = stringCollection.Cast<string>().ToList(); 
66

Nessun problema a tutti! Crea una nuova impostazione, ad es. "MyListOfStrings", il tipo non ha importanza. il file

enter image description here

impostazioni poi aperti in un editor XML

enter image description here enter image description here

il file sarà simile a questa:

enter image description here

ora cambiare come mostrato di seguito e salvalo

enter image description here

bene, questo è tutto, ora che sarà del tipo che:

enter image description here

e nel codice:

enter image description here

+0

Se 'MyListOfStrings' viene definito in questo modo, si può accedere con l'editor di Visual Studio? – Codor

+0

sì, invio/nuova riga crea un nuovo elemento in quell'elenco – pr0gg3r

+0

Sto provando a creare un elenco di System.Windows.Media.Color ma sto ottenendo 'la proprietà non può essere creata dal suo valore predefinito, c'è un errore nel documento XML (1,1) 'eccezione. Quale potrebbe essere il problema? Ho provato a impostare i valori di default come stringhe (Rosso, Blu ...) e anche usando esadecimali (# FFFF00FF ...) senza successo. – Sturm

0

Quando si utilizza il tipo di sistema in modo nativo supportato .Collections.Specialized.StringCollection

Ho usato questo codice:

 System.Collections.Specialized.StringCollection SavedSearchTerms = new System.Collections.Specialized.StringCollection(); 

     if (Properties.Settings.Default.SavedSearches != null) 
     { 
      SavedSearchTerms = Properties.Settings.Default.SavedSearches; 
     } 

     SavedSearchTerms.Add("Any Value"); 

     Properties.Settings.Default.SavedSearches = SavedSearchTerms;