tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: コンボボックスの内容をコピーしたい
投稿日: 2006/01/11(Wed) 22:27
投稿者なおこ(・∀・)
お世話になります。

配列の長さを指定してやればうまくいくとおもいます。

Me.ComboBox1.Items.Clear()
Me.ComboBox1.Items.Add("aaa")
Me.ComboBox1.Items.Add("bbb")
Me.ComboBox1.Items.Add("ccc")
Me.ComboBox1.Items.Add("ddd")

Dim collection As ComboBox.ObjectCollection = Me.ComboBox1.Items
Dim obj(collection.Count - 1) As Object

collection.CopyTo(obj, 0)
Me.ComboBox2.Items.AddRange(obj)

でも、ADO.NET(ODP.NET)で、
DataTable や DataSet を取得してバインドするほうが
ループする必要もないし、簡単だと思います。
手元に Oracle がないので検証してませんが、こんなかんじでしょうか。

Imports Oracle.DataAccess.Client

Dim con As OracleConnection = New OracleConnection(接続文字列)

Dim da As OlacleDataAdapter = New OlacleDataAdapter
Dim cmd As OlacleCommand = New OlacleCommand

cmd.Connection = con
cmd.CommandText = "SELECT TABLE_NAME FROM USER_TABLES"
da.SelectCommand = cmd

con.Open()
Dim dt As DataTable = New DataTable
da.Fill(dt)

cboTableA.DataSource = dt
cboTableA.DisplayMember = "TABLE_NAME"
cboTableB.DataSource = dt.Copy() '参照だけなら、Copy する必要も無いと思います。
cboTableB.DisplayMember = cboTableA.DisplayMember
cboTableC.DataSource = dt.Copy()
cboTableC.DisplayMember = cboTableA.DisplayMember

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。