Mam ListBox na moim formularzu, chcę go zapisać i załadować wartości po ponownym uruchomieniu aplikacji.Jak zapisać listę <string> w ustawieniach. Domyślnie?
Jak zapisać listę na PrjName.Properties.Settings.Default
?
Mam ListBox na moim formularzu, chcę go zapisać i załadować wartości po ponownym uruchomieniu aplikacji.Jak zapisać listę <string> w ustawieniach. Domyślnie?
Jak zapisać listę na PrjName.Properties.Settings.Default
?
Dowiedziałem się, że nie mogę bezpośrednio zapisać List<string>
w ustawieniach aplikacji, ale widziałem, że mogę zapisać StringCollection
.
I here I okazało się, że jest to bardzo proste do konwersji z StringCollection
do List<string>
var list = stringCollection.Cast<string>().ToList();
żaden problem! Utwórz nowe ustawienie, np. "MyListOfStrings", typ nie ma znaczenia. złożyć
następnie otwarte ustawienia w edytorze xml
plik będzie wyglądać następująco:
teraz zmienić go tak jak pokazano poniżej i zapisz go
dobrze, to wszystko, teraz to będzie wyglądać tak:
oraz w postaci kodu:
Podczas korzystania z natywnie obsługiwany typ systemu .Kolekcje.Specjalistyczne.TracingCollection
Użyłem tego kodu:
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;
Jeśli 'MyListOfStrings' jest zdefiniowana w ten sposób, może on uzyskać dostęp do edytora w Visual Studio IDE? – Codor
tak, wprowadź/nowa linia tworzy nowy element na tej liście – pr0gg3r
Próbuję utworzyć listę System.Windows.Media.Color, ale otrzymuję 'Właściwość nie może zostać utworzony z jego wartości domyślnej, jest błąd w dokumencie XML (1,1) 'wyjątek. Co może być problemem? Próbowałem ustawić wartości domyślne jako ciągi (czerwony, niebieski ...) i za pomocą szesnastkowych (# FFFF00FF ...) bez powodzenia. – Sturm