0

我在 My.Settings 中保存了一个 ArrayList 我正在尝试使用一些字符串来访问它,这是代码,所以你得到了我想要做的事情

If listBoxEdit1.SelectedIndex > -1 Then
        My.Settings("Sup" & listBoxEdit1.SelectedIndex + 1 & "(1)") = Convert.ToDouble(Margin2TextBox.Text)
    End If

我需要为 My.Settings.Sup1(1) 指定值

你会怎么做?

我有多个 ArrayLists,从 My.Settings.Sup1 到 My.Settings.Sup20 所以listBoxEdit1.SelectedIndex+1指定了 ArrayList 的数量,但我不知道如何获取索引

也试过

My.Settings("Sup" & listBoxEdit1.SelectedIndex + 1 &"("& 1 & ")")

My.Settings("Sup" & listBoxEdit1.SelectedIndex + 1).Item(1)
4

1 回答 1

0

选择StringCollection您的设置类型。

在此处输入图像描述

然后,您可以轻松访问具有索引的特定元素。

Dim setting As StringCollection = My.Settings.MySetting
Dim value1 = My.Settings.MySetting(1)
Dim value2 = My.Settings.MySetting(2)
Dim valueX = My.Settings.MySetting.Item(X)

编辑

如果您的设置被调用Sup1,您可以通过My.Settings("Sup1")或 My.Settings("Sup" & whatever) 访问它。然后,您拥有您的ArrayListorStringCollection并且可以像其他所有ArrayListor一样访问其项目StringCollection

所以你的代码可能应该是:

 My.Settings("Sup" & listBoxEdit1.SelectedIndex + 1)(1) = Convert.ToDouble(Margin2TextBox.Text)

这是另一个例子:

My.Settings.MySetting1 = New StringCollection()

My.Settings("MySetting" & 1).Add("FooBar")
My.Settings("MySetting" & 1).Add("123456")

My.Settings("MySetting" & 1)(0) = "Hey, what's up?"

MsgBox(My.Settings("MySetting" & 1)(1))
于 2012-08-21T06:58:41.167 回答