【发布时间】:2013-04-21 13:01:37
【问题描述】:
我有一个包含很多选项的列表框(准确地说是 198 个),它们是项目的名称。 我需要将每个名称转换为等于一个整数(项目 ID),以便我可以将该数字写入文件。
例如,如果他们选择了第一项,则整数将设置为等于 3000,但如果他们选择了第二项,则整数将设置为 3001,依此类推。
我希望你能理解,不知道如何措辞。谢谢。
【问题讨论】:
标签: vb.net listbox integer equals-operator
我有一个包含很多选项的列表框(准确地说是 198 个),它们是项目的名称。 我需要将每个名称转换为等于一个整数(项目 ID),以便我可以将该数字写入文件。
例如,如果他们选择了第一项,则整数将设置为等于 3000,但如果他们选择了第二项,则整数将设置为 3001,依此类推。
我希望你能理解,不知道如何措辞。谢谢。
【问题讨论】:
标签: vb.net listbox integer equals-operator
将dataTable 分配给您的listBox 的ItemSource。 DataTable 显然可以包含多个字段。您必须配置列表框的属性以将其中一个字段(要显示的字符串)设置为可见,然后将另一个字段设置为visible = false。在其中一个事件中(例如 selectedItemChange 我认为)访问与 id 字段对应的项目的 SelectedItem。
【讨论】:
创建一个 ENUMERATION 并为每个项目分配一个值,如下所示
Public Enum MyCountryCodes As Integer
drzCOUNTRY_UNKNOWN = 0
drzCOUNTRY_AFGHANISTAN = 1
drzCOUNTRY_ALBANIA = 2
drzCOUNTRY_ALGERIA = 3
drzCOUNTRY_AMERICANSAMOA = 4
drzCOUNTRY_ANDORRA = 5
... etc etc
drzCOUNTRY_YEMEN = 241
drzCOUNTRY_ZAMBIA = 242
drzCOUNTRY_ZIMBABWE = 243
End Enum
【讨论】:
你的意思是这样的?
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
MsgBox(ListBox1.SelectedIndex + 3000)
End Sub
【讨论】: