2

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 cannot be convert to string" でこのエラーを取得します。

MaxLenDict("hello world")=""

では、プロパティを文字列辞書として作成して使用するにはどうすればよいでしょうか?

4

1 に答える 1

3

あなたのプロパティはタイプStringDictionary()(配列!)であり、ではありませんStringDictionary

StringDictionaryただし、そもそも使用が推奨されているかどうかはわかりません。このクラスは、ジェネリック以前のバージョンの .NET の名残りです。Dictionary(Of String, String)代わりに使用してください。

于 2012-08-05T16:46:53.773 に答える