Сохранение / загрузка 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()
Другие вопросы по тегам