使用vb.net组合框中的数据库索引选择

时间:2018-02-09 09:52:26

标签: vb.net sqlite combobox

我有一个关于vb.net组合框中选择索引的问题。 这是场景:

我有一个数据库表,它基本上具有以下结构:

| ID | Product | Property   | .....
---------------------------------------
| 0  | Fork    | Property A |
| 1  | Spoon   | Property B | 
| 2  | Knife   | Proberty A |
| 3  | Chair   | Property C |
| 4  | Candle  | Property B |
| 5  | Plate   | Property C |

等等。我使用“product”列来填充vb.net应用程序中的组合框。根据用户提前做出的其他选择,只有具有特定属性的产品才能在组合框中显示。我意识到我的sql查询,然后我将“Product”分配给组合框。到目前为止这是有效的(我隐藏了所有的sqlite-stuff):

CB.DataSource = sqlite.SelectData("Select ID, Product from table where Property = "Property A"  order by ID")
CB.ValueMember = "Product"

我的问题是:如何存储所选值。我想将所选产品的ID与其他一些表一起存储在另一个表中。 如果我使用

读取所选对象的ID
id = CB.SelectedIndex

我当然只是在该对象的组合框中的位置,而不是真正的数据库ID。当属性过滤器关闭时,这些数字是相同的,但当它打开时,当然是不同的。是否有任何简单的直接方式从组合框中读取相应的数据库ID,或者我必须在存储值之前查询它(尽管“产品”具有“唯一”标志,但这可能是令人讨厌的。)

非常感谢你。

0 个答案:

没有答案