Сохранение списка в My.Settings

Я пытаюсь сохранить переменную списка в My.Settings, но я не могу найти тип, который работает. Я использую Visual Studio 2017. Вот как я построил список...

Dim Parameters As New List(Of String)
Parameters.Add("Item1")
Parameters.Add("Item2")

Ошибка появляется при попытке загрузить или сохранить настройку.

Dim Times As New List(Of String)
Times = My.Settings.Times

или же

My.Settings.Item("Times") = Times

хотя последний не отображается как ошибка, но он вылетает из программы.

Я попытался установить тип установки на String, StringCollection, ListDictionaryи т. д. но безрезультатно.

1 ответ

Решение

System.Collections.Specialized.StringCollection является наиболее распространенным, хотя вы не можете назначить List(Of String) к нему напрямую, так как они разных типов.

Вместо этого вы должны повторить свой List(Of String) и добавить каждый элемент в My.Settings список:

'Remove the old items.
My.Settings.Clear()

'Add the new ones.
For Each Item As String In Times
    My.Settings.Times.Add(Item)
Next

Аналогично, при чтении его обратно в List(Of String):

For Each Item As String In My.Settings.Times
    Times.Add(Item)
Next
Другие вопросы по тегам