我有一个关于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与其他一些表一起存储在另一个表中。 如果我使用
读取所选对象的IDid = CB.SelectedIndex
我当然只是在该对象的组合框中的位置,而不是真正的数据库ID。当属性过滤器关闭时,这些数字是相同的,但当它打开时,当然是不同的。是否有任何简单的直接方式从组合框中读取相应的数据库ID,或者我必须在存储值之前查询它(尽管“产品”具有“唯一”标志,但这可能是令人讨厌的。)
非常感谢你。
路