C# 有问题的组合框窗口窗体

C# 有问题的组合框窗口窗体,c#,.net,winforms,windows-forms-designer,C#,.net,Winforms,Windows Forms Designer,我使用VS2008 C+Windows窗体。我不明白为什么comboBox没有按应有的方式运行。 在设计模式下,我在表单中添加了一个组合框,并编辑项目以添加a和B。双击会显示SelectedIndexChanged事件,我编辑该事件以显示带有MessageBox的选定文本 private void comboBoxImageSet_SelectedIndexChanged(object sender, EventArgs e) { MessageBox.Show(comboBoxImag

我使用VS2008 C+Windows窗体。我不明白为什么comboBox没有按应有的方式运行。 在设计模式下,我在表单中添加了一个组合框,并编辑项目以添加a和B。双击会显示SelectedIndexChanged事件,我编辑该事件以显示带有MessageBox的选定文本

private void comboBoxImageSet_SelectedIndexChanged(object sender, EventArgs e)
{
    MessageBox.Show(comboBoxImageSet.SelectedText);
}
当我运行并在组合框中选择A或B时,消息框会出现,但不会写入任何内容。 为什么?

谢谢。

获取或设置选定的文本 在组合框的可编辑部分

也就是说,它获取当前标记的文本

您想使用SelectedItem.ToString。

获取或设置选定的文本 在组合框的可编辑部分

也就是说,它获取当前标记的文本


要使用SelectedItem.ToString。

SelectedText属性返回组合框中标记的文本,而不是所选项目。如果组合框可编辑,则可以标记部分文本,SelectedText属性将返回标记的文本


你感兴趣的是财产或财产

SelectedText属性返回组合框中标记的文本,而不是所选项目。如果组合框可编辑,则可以标记部分文本,SelectedText属性将返回标记的文本

你感兴趣的是财产或财产

ComboBox.SelectedText

一个字符串,表示当前 组合框中的选定文本。如果 DropDownStyle设置为DropDownList, 返回值是一个空字符串

使用SelectedItem而不是SelectedText

组合框。SelectedText

一个字符串,表示当前 组合框中的选定文本。如果 DropDownStyle设置为DropDownList, 返回值是一个空字符串


使用SelectedItem而不是SelectedText,此处显示控件的选择属性之间的差异

; ; ; . SelectedIndex属性:

获取或设置指定当前选定项的索引

仅指示选择列表中所选项目的索引。提供的信息仅供您参考=

SelectedItem属性:

获取或设置组合框中当前选定的项

SelectedItem表示当前根据ComboBox的ListControl选择的元素。这就是为什么你想用这个来回答你的问题

SelectedText属性:

获取或设置在组合框的可编辑部分中选择的文本

也就是说,当您编辑组合框的文本框部分、输入进行编辑时可能选择的文本或任何其他类型的文本选择时。这确实包括通过组合框的ListControl部分进行的任何选择。例如,如果属性设置为,则永远无法在组合框的可编辑部分选择任何文本。尽管如此,您仍可以在its列表中选择另一项。这就是为什么它不是用于你的目的的正确财产

SelectedValue属性:

获取或设置ValueMember属性指定的成员属性的值

仅在与DisplayMember属性一起使用数据绑定时使用。例如,当您要显示客户的名称并通过其数据库Id选择他时,DisplayMember应显示客户的名称,ValueMember应显示Id。这样,当您选择一个客户时,SelectedValue将更改并引发从ListControl继承的SelectedValueChanged事件。提供的信息仅供您参考=


这里是控件的选择属性之间的差异

; ; ; . SelectedIndex属性:

获取或设置指定当前选定项的索引

仅指示选择列表中所选项目的索引。提供的信息仅供您参考=

SelectedItem属性:

获取或设置组合框中当前选定的项

SelectedItem表示当前根据ComboBox的ListControl选择的元素。这就是为什么你想用这个来回答你的问题

SelectedText属性:

获取或设置在组合框的可编辑部分中选择的文本

也就是说,当您编辑组合框的文本框部分、输入进行编辑时可能选择的文本或任何其他类型的文本选择时。这确实包括通过组合框的ListControl部分进行的任何选择。例如,如果属性设置为,则永远无法在组合框的可编辑部分选择任何文本。尽管如此,您仍可以在its列表中选择另一项。这就是为什么它不是正确的财产 为了达到你的目的,你必须使用y

SelectedValue属性:

获取或设置ValueMember属性指定的成员属性的值

仅在与DisplayMember属性一起使用数据绑定时使用。例如,当您要显示客户的名称并通过其数据库Id选择他时,DisplayMember应显示客户的名称,ValueMember应显示Id。这样,当您选择一个客户时,SelectedValue将更改并引发从ListControl继承的SelectedValueChanged事件。提供的信息仅供您参考=


对于GRIN,请尝试ComboBoxsender.SelectedText,而不是在控件之后尝试运行事件的实例。对于GRIN,请尝试ComboxSender.SelectedText,而不是在控件之后尝试运行事件的实例。