VB.NET属性为StringDictionary?

时间:2012-08-05 16:33:17

标签: vb.net properties stringdictionary

我正在尝试使用StringDictionary类型创建一个新属性,但是当我使用像stringdictionary变量这样的属性时,我收到一个错误。 目标是不使用变量,我需要为此使用属性。在幕后我将stringdictionary值保存到全局用户ID索引集合。这是创建属性并尝试获取和设置的代码:

Public Property MaxLenDict As StringDictionary()
    Get
        Return GetFromCollection("MaxLenDict")
    End Get
    Set(Value As StringDictionary())
        SaveToCollection("MaxLenDict", Value)
    End Set
End Property

Public Sub ExampleSub()
    If MaxLenDict("hello world") = "" Then MaxLenDict.Add("Hello World", "I'm Here")
End Sub

在此代码的IF语句中,在ExampleSub中获取此错误“StringDictionary无法转换为字符串”:

MaxLenDict("hello world")=""

那么如何成功制作和使用属性作为stringdictionary?

1 个答案:

答案 0 :(得分:3)

您的属性类型为StringDictionary()(数组!),而不是StringDictionary

我不确定首先建议使用StringDictionary。该类只是.NET的前泛型版本的残余。请改用Dictionary(Of String, String)