”ListBoxへのAddでエラー”
タイトルの通りです。
DoubleからStringの型変換が不可なんでしょうか?
”.ToString” によってエラーになってるようです。
For~Eachでの3行で処理するとOKなのですが1行で
なんとかならないものかと調べていましたが、いきずまっています。
Items.AddではなくItems.AddRangeを使う場合、どういうふうに
書くんでしょうか?。ちなみに、配列がString型の場合にはエラー
にならないことは知っています。(.ToStringも不要)
’--------サンプル----------
Public Class Form1
Private Sub Button1_Click() Handles Button1.Click
Dim Test_arr() As Double = {1.4, 1.2, 1.9, 1.7, 1.4, 2.8, 1.2, 3.2, 1.99, 4.2}
ListBox1.Items.AddRange(Test_arr.ToString) '←この行でエラー
For Each x As Double In Test_arr '←これはOK
ListBox1.Items.Add(x.ToString) '
Next '
End Sub
End Class
エラー内容は、↓
------------------------------------------------------------------
エラー 1 これらの引数で呼び出される、アクセス可能な 'AddRange' が
ないため、オーバーロードの解決に失敗しました:
'Public Sub AddRange(items() As Object)': 型 'String' の値を 'Object の
1 次元配列' に変換できません。
'Public Sub AddRange(value As System.Windows.Forms.ListBox.ObjectCollection)': 型 'String' の
値を 'System.Windows.Forms.ListBox.ObjectCollection' に変換できません。
------------------------------------------------------------------
どなたかご教授願えれば幸いです。環境はVisualBasic2010+WindowsXPです。
お礼
分かりました。ありがとうございます。