ComboBox.SelectedText没有给我SelectedText

Coc*_*Dev 52 c# string combobox winforms

我正在构建一个String,代码看起来像

String status = "The status of my combobox is " + comboBoxTest.SelectedText
Run Code Online (Sandbox Code Playgroud)

我在VS2010中使用WinForm

结果看起来像

"我的组合框的状态是"

Mar*_*rco 96

我想你想用

String status = "The status of my combobox is " + comboBoxTest.Text
Run Code Online (Sandbox Code Playgroud)

来自MSDN的 SelectedText属性

获取或设置在ComboBox的可编辑部分中选择的文本.

来自MSDN的 Text属性

获取或设置与此控件关联的文本.

  • @CocoaDev:SelectedItem是一个对象,也可以是一个类,所以将它转换为字符串可能不是你需要的.当你填充组合框时,你可以将项目设置为类,所以在SelectedItem上观察你可以做你想做的事情...... (3认同)

Shr*_*ree 16

文档:

您可以使用SelectedText属性来检索或更改ComboBox控件中当前选定的文本.但是,您应该知道,由于用户交互,选择可以自动更改.例如,如果在按钮Click事件处理程序中检索SelectedText值,则该值将为空字符串.这是因为当输入焦点从组合框移动到按钮时,将自动清除选择.

当组合框失去焦点时,选择点将移动到文本的开头,并且任何选定的文本都将被取消选中.在这种情况下,获取SelectedText属性将检索空字符串,并设置SelectedText属性会将指定值添加到文本的开头.


Mar*_*hal 9

我认为你不需要,SelectedText但你可能需要

String status = "The status of my combobox is " + comboBoxTest.Text;
Run Code Online (Sandbox Code Playgroud)


小智 9

我在5分钟前遇到了这个问题。

我认为一个解决方案(使用Visual Studio 2005)是:

myString = comboBoxTest.GetItemText(comboBoxTest.SelectedItem);
Run Code Online (Sandbox Code Playgroud)

如果我错了,请原谅我。


Nat*_*han 5

之前的所有答案都解释了OP“应该”做什么。我正在解释什么.SelectedText是财产。

.SelectedText属性不是 中的文本combobox。这是突出显示的文本。.SelectedText它与a 的属性相同textbox

下图显示该.SelectedText属性将等于“ort”。

在此输入图像描述