1

私が使用しvb.netているのは、次のオブジェクト配列です。これを使用して、すべての真の値を抽出し、名前を付けて配列に追加します。これがオブジェクト配列です。 ここに画像の説明を入力してください

これは私がこれまでに試したことです:

  Dim myarray() As String
        Dim number As Integer = 0
        If resultArray(0).BolComment Then

            myarray(number) = "comment"
            number = number + 1
        End If
        If resultArray(0).BolComplete Then

            myarray(number) = "complete"
            number = number + 1
        End If
        If resultArray(0).BolFinished Then

            myarray(number) = "Finished"
            number = number + 1
        End If
        If resultArray(0).BolOutCome Then

            myarray(number) = "OutCome"
            number = number + 1
        End If
        If resultArray(0).BolStatred Then

            myarray(number) = "Started"
            number = number + 1
        End If
        If resultArray(0).BolUser Then

            myarray(number) = "User"
            number = number + 1
        End If

これは私にエラーを与えています:変数は以前に使用されました

trueを持つすべてのアイテムとpushそれを新しい配列に抽出して、新しい 感謝withを与えるにはどうすればよいですか?name

4

1 に答える 1

2

問題は、配列を特定のサイズに初期化していないこと、または新しいアイテムを追加するたびにサイズを変更していないことだと思います。List(T)ただし、次のクラスを使用することをお勧めします。

Dim list As New List(Of String)()
If resultArray(x).BolComment Then
    list.Add("comment")
End If
If resultArray(0).BolComplete Then
    list.Add("complete")
End If
If resultArray(0).BolFinished Then
    list.Add("Finished")
End If
If resultArray(0).BolOutCome Then
    list.Add("OutCome")
End If
If resultArray(0).BolStatred Then
    list.Add("Started")
End If
If resultArray(0).BolUser Then
    list.Add("User")
End If

次に、実際の配列として必要な場合は、次のようにします。

Dim myarray() As String = list.ToArray()
于 2012-08-23T19:59:14.293 に答える