Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ListView控件保存/加载My.Settings-vb.net_Vb.net_Listview_Load_Save_My.settings - Fatal编程技术网

使用ListView控件保存/加载My.Settings-vb.net

使用ListView控件保存/加载My.Settings-vb.net,vb.net,listview,load,save,my.settings,Vb.net,Listview,Load,Save,My.settings,我正在用Visual Basic制作一个必须包含高分表的游戏。 我使用名为lstscores的ListView控件将分数行存储在名为Name和Score的两列中。 正确时,用户必须猜测输入名为lstwords的列表框中的单词。 我在应用程序中设置了两个东西。设置:设置名称和设置分数,类型:System.Collections.Specialized.StringCollectino,范围:用户和值:无 当用户单击save按钮时,我基本上希望获取用户名和分数,并将其分别存储在设置中。因此,下次打开

我正在用Visual Basic制作一个必须包含高分表的游戏。 我使用名为
lstscores
ListView
控件将分数行存储在名为
Name
Score
的两列中。 正确时,用户必须猜测输入名为
lstwords
的列表框中的单词。 我在
应用程序中设置了两个东西。设置
设置名称
设置分数
,类型:
System.Collections.Specialized.StringCollectino
,范围:
用户
和值:

当用户单击save按钮时,我基本上希望获取用户名和分数,并将其分别存储在设置中。因此,下次打开表单时,我可以将设置加载回相同的
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))

您可以结合使用
Save()
Reload()
方法来存储数据。 当用户单击“保存”按钮时,您可以迭代ListView,将内容
ListView.Items[n]
添加到名称集合中,并将子项的内容(
ListViewItem.SubItems[0]
)添加到分数集合中。然后,使用
My.Settings.Save()
保存数据。要在启动后将数据返回到
列表视图
,请使用
My.Settings.Reload()
(例如,在
Form.Load
事件中)并迭代返回。下面是一个保存迭代(未测试)的示例:


好的,所以我只用settingname行尝试了你的代码,它甚至没有保存到my.Settings中。如果你对lstscores.Items中的每个it0使用
my.Settings.save()
my.Settings.settingname.Add(it0.Text)
下一步
my.Settings.save()
确定。您是否尝试过加载的完整解决方案?如何检查my.settings的内容是否已更改?它应该在文件系统的某个地方。VS内容不会更改,它们是默认设置。要检查设置是否已更改,我双击
myproject
并转到
settings
,而
settingname
设置仍然具有默认的xml代码。为了将分数带到listview控件,我使用了我在原始问题中输入的代码
For Each it0 in lstscores.Items
    My.Settings.settingname.Add(it0.Text)
    My.Settings.settingscore.Add(it0.SubItems[0].Text)
Next
My.Settings.Save()