0

我正在使用此代码来保护列表中显示的最后一部分。
这很好用,但每当我得到SelectedTextofComboBox返回一个空字符串。
实际上它应该返回“First”还是我错了?

comboBox1.Items.Add("First \0 Last");
comboBox1.SelectedIndex = 0;
if (comboBox1.SelectedText == "") MessageBox.Show("Empty string");
//Message box shown

注意:我不是在寻找解决此问题的解决方案

4

2 回答 2

3

这不是错误。如果您在按钮 Click 事件处理程序中检索 SelectedText 值,则该值将是一个空字符串。这是因为当输入焦点从组合框移动到按钮时,选择会自动清除。

http://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.selectedtext.aspx

你可以使用comboBox1.SelectedItem.ToString();

http://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.selecteditem.aspx

于 2013-02-23T13:49:32.797 回答
0

总是最好使用SelectedIndex来挑选文本,例如,comboBox1.Items[comboBox1.SelectedIndex]

于 2013-02-23T13:48:35.187 回答