【问题标题】:Get the value of a non-display member item in a ComboBox获取 ComboBox 中非显示成员项的值
【发布时间】:2017-01-04 16:03:57
【问题描述】:

希望这不是一个愚蠢的问题。

我正在从 MySQL 中填充 ComboBox,如下所示:

Try
    Dim con As New MySqlConnection(main.connection_string)
    Dim dax As New MySqlDataAdapter("SELECT id,friendly_name FROM     customers WHERE active=1 ORDER BY friendly_name ASC", con)
    Dim dtx As New DataTable
    dax.Fill(dtx)

    ticket_cust_combo.DisplayMember = "friendly_name"
    ticket_cust_combo.DataSource = dtx
Catch ex As Exception
End Try

效果很好,ComboBox 已被填充。

我可以检索用户选择的任何值:

Dim selectedcust = ticket_cust_combo.text

我想要做的是获取与“friendly_name”相关联的“id”。在我最初的 SQL 读取中,我读取了 'id' 并且没有错误,所以我假设它在某种数组中并且 ComboBox 仅使用 DisplayMember 是否正确?

我现在要进行第二次 SQL 调用以再次检索“id”,但如果数据已经在这里,那就太浪费了。

【问题讨论】:

  • 将id映射为ValueMember,然后查看SelectedValue
  • 我会用 'blahblah = ticket_cust_combo.value' 检索它吗?

标签: mysql vb.net combobox populate


【解决方案1】:

Plutonix 完全正确!

像这样将 id 添加为 valuemember ...

 ticket_cust_combo.ValueMember = "id"

并且可以使用...检索 ID。

 Dim idval As String = ticket_cust_combo.SelectedValue.ToString
 MessageBox.Show(idval)

谢谢,一如既往:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-02
    • 1970-01-01
    • 1970-01-01
    • 2013-07-11
    • 1970-01-01
    • 1970-01-01
    • 2023-04-10
    相关资源
    最近更新 更多