如何在.NET ComboBox控件上获取所选项索引?

时间:2010-02-06 22:36:27

标签: vb.net combobox indexing selecteditem

我有一个ComboBox设置,包含4个项目,索引范围从0到3。

稍后在我的代码中,我需要根据所选内容执行某个事件。为此,我考虑比较所选ComboBox项的索引是什么,因为整数比较比字符串快,对吧?

如何获取所选项目的索引?

3 个答案:

答案 0 :(得分:1)

ComboBox有SelectedIndex属性。

myComboBox.SelectedIndex

关于比较:
如果您没有进行数百万次比较,那么这种“优化”对您没有帮助。

答案 1 :(得分:0)

你确定整数比较总是比字符串比较快吗?

取决于您比较的字符串有多长...如果您比较两个字符串,每个字符串只有一个字符,那么它是一个简单的逐字节AND操作,可能比比较一个4字节的整数值更快。

答案 2 :(得分:0)

通常,您可以使用 ComboBox.SelectedIndex 属性获取当前所选项目的列表索引。

但是,我遇到过在组合框的文本字段中输入了一些文本的情况,并且SelectedIndex属性未正确更新并包含值-1。在这种情况下,您可以使用 ComboBox.FindStringExact 方法查找输入文本的列表索引:

Dim selectedIndex As Integer = myComboBox.FindStringExact(myComboBox.Text)

(顺便说一句,如果找不到包含指定文本的列表项,该函数将返回-1。)