Сохранение / загрузка My.Settings с помощью элемента управления ListView - vb.net
Я делаю игру в Visual Basic, которая должна содержать таблицу рекордов. Я использую ListView
управление по имени lstscores
хранить ряды баллов в 2 столбцах под названием Name
а также Score
, Пользователь должен угадать слова, которые вводятся в список, называемый lstwords
когда правильно. Я установил 2 вещи в Application.Settings
: settingname
а также settingscore
оба с типом: System.Collections.Specialized.StringCollectino
, Объем: user
и значение: Nothing
,
Когда пользователь нажимает кнопку "Сохранить", я в основном хочу взять имя пользователя и счет и сохранить его в настройках соответственно. Поэтому, когда я открою форму в следующий раз, я могу загрузить настройки обратно в тот же ListView
контроль.
Я занимался исследованиями в течение нескольких часов, и я не смог найти ничего, что бы точно соответствовало моим потребностям.
Я не могу предоставить свой код, так как я попробовал все возможное, насколько мне известно, и ничего не сработало.
Если бы кто-то мог дать мне совет или указания, как это сделать, я был бы очень благодарен.
Спасибо
Dim arr(1) As String
Dim score As Integer
inputname = txtname.Text
score = lstwords.Items.Count
arr(0) = inputname
arr(1) = score
lstscores.Items.Add(New ListViewItem(arr))
1 ответ
Вы можете использовать комбинацию Save()
а также Reload()
методы для хранения ваших данных. Когда пользователь нажимает кнопку "Сохранить", вы можете выполнять итерацию добавления контента в ListView. ListView.Items[n]
к коллекции имен и содержания подпункта (ListViewItem.SubItems[0]
) к сбору баллов. Затем используйте My.Settings.Save()
сохранить ваши данные. Чтобы ваши данные вернулись в ListView
после запуска используйте My.Settings.Reload()
(например Form.Load
событие) и повторить его обратно. Вот пример сохранения итерации (не проверено):
For Each it0 in lstscores.Items
My.Settings.settingname.Add(it0.Text)
My.Settings.settingscore.Add(it0.SubItems[0].Text)
Next
My.Settings.Save()