c# - 如何根据字符串检查组合框的索引?

标签 c# combobox indexing

我有一个包含 3 个硬编码字符串值的 ComboBox:

A
B
C

如果我尝试根据 SelectedValueSelectedItemSelectedText 更改当前选定的值,它们都不会将索引更改为适当的项目。

目前我正在做类似的事情:

switch (str)
{
    case 'A':
        comboBox.SelectedIndex = 0;
        break;
    case 'B':
        comboBox.SelectedIndex = 1;
        break;
    case 'C':
        comboBox.SelectedIndex = 2;
        break;
}

但如您所见,这是一个相当薄弱的解决方案,如果对项目进行重新排序、编辑或附加,将会中断。

有什么更好的方法吗?

最佳答案

你可以这样做:

comboBox.SelectedIndex = comboBox.Items.IndexOf("B");

但这也适用于我的电脑:

comboBox.SelectedItem = "B";

comboBox 中硬编码的字符串一定有问题。检查是否有一些异常字符或白色(空白)字符。

关于c# - 如何根据字符串检查组合框的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13459772/

相关文章:

c# - ComboBox 在 Clear() 之后有它的旧值

extjs - 组合框 ext 4.0 中的动态滚动

c# - 如何处理 ComboBox 的 SelectedIndexChanged 事件?

mysql - 如何在MySQL中启用哈希表索引?

c# - 动态返回通用接口(interface)

c# - 如何在 wpf 中检测拖动开始

c# - 如何在 C# 中创建嵌套的自定义配置部分?

elasticsearch - 一个大的Elasticsearch查找索引,还是几个小的索引?

indexing - 长时间重建后确保 Solr/Lucene 索引为 "up to date"的最佳实践

c# - 在 Linux 中使用 GSMComm