こんにちは皆さん、ValueMemberに問題があります。コードを見てください:
conn.ConnectionString = _
"Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & _
"c:\\magazyn.mdb"
' Try
conn.Open()
da2 = New OleDbDataAdapter(sql1, conn)
da2.Fill(ds2)
' DataGridView1.DataSource = ds.Tables("Nazwa")
' DataGridView1.Update()
ComboBox4.DataSource = Nothing
ComboBox4.DataSource = ds2.Tables(0)
ComboBox4.ValueMember = Nothing
ComboBox4.DisplayMember = "Nazwa_Towaru"
ComboBox4.ValueMember = "Kod_Towaru"
MessageBox.Show(ComboBox4.Text + "-" + ComboBox4.ValueMember)
' Catch ex As Exception
'MessageBox.Show("Brak podłączonej bazy/problem z podłączeniem do bazy")
' Finally
conn.Close()
' End Try
MessageBoxは次のようなものを表示するはずです:グラフィックカード-123ASDの最初の要素は「Nazwa_Towaru」、2番目は「Kod_Towaru」ですが、MBは次のようなものを表示します:グラフィックカード-「Kod_Towaru」。初めてDATASETの「Kod_Towaru」列が空だと思いますが、これを確認すると、列にデータがあります。
私はこれと同じコードを持つ別のコンボボックスも持っており、それは素晴らしい働きをしているので、なぜこれがそうではないのですか?すべての変数はローカルであるため、コリデートはありません。