1

大家好,我对 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”,第二个是“Kod_Towaru”,但 MB 向我显示类似这样的内容:图形卡 - “Kod_Towaru”。第一次我认为 DATASET 中的“Kod_Towaru”列是空的,但我检查了这个并且列是 data 。

我还有另一个具有相同代码的 ComboBox 并且它的工作很好,所以为什么这个不是。所有变量都是本地的,因此它们没有合并。

4

1 回答 1

0

我猜 ComboBox4.SelectedIndex = -1。将组合框与数据源绑定后,将所选索引设置为 0(如果组合框中有数据)

哔叽

于 2012-11-15T15:21:17.010 回答