0

私が持っているコードは次のとおりです。

Dim Dbase() As String = Nothing

Dbase(0) = Db_ComboBox.Text

私はDbase配列として宣言し、割り当てられたNothingDb_ComboBoxコンボボックスです。

その割り当てステートメントに対して、次のエラーが発生します:"参照'Dbase'の値は'Nothing' "

このエラーの理由は何ですか?コンボボックスから値を取得して配列に保存するにはどうすればよいですか?

4

3 に答える 3

1

これを変更する必要があります:

Dim Dbase() As String = Nothing

これに(1つの要素の配列を宣言する):

Dim Dbase(0) As String

そして、この行は機能します:

Dbase(0) = Db_ComboBox.Text

配列サイズを変更する必要がある場合は、必要に応じて、 RedimまたはRedimpreserveを使用できます。

の内容が頻繁に変更されることが予想される場合は、配列サイズを手動で処理するのではなく、にDbase切り替えることについての@Joelの提案に賛成です。List(Of String)

于 2013-02-13T20:28:43.857 に答える
0

Dbase()なんでもない。この例を見てください:

cargoWeights = New Double(10) {}
atmospherePressures = New Short(2, 2, 4, 10) {}
inquiriesByYearMonthDay = New Byte(20)()() {}

これが配列の宣言方法です。

その他の例: http: //msdn.microsoft.com/en-us/library/vstudio/wak0wfyt.aspx

于 2013-02-13T16:37:39.650 に答える
0

あなたのコードを見てみましょう:

Dim Dbase() As String = Nothing

Dbase(0) = Db_ComboBox.Text

特に最初の行。その最初の行は、配列を参照できる= Nothing変数を作成しますが、その部分は、「ここではまだ実際の配列を作成しないでください」と明示的に示しています。事実上、何も指さないポインタがあります。

ここで、本当に必要なのは、時間の経過とともに追加できるリストコレクションであることがわかりました。

Dim Dbase As New List(Of String)()
Dbase.Add(Db_ComboBox.Text)
于 2013-02-13T16:51:18.157 に答える