我有一个包含 3 个硬编码字符串值的 ComboBox:
A
B
C
如果我尝试根据 SelectedValue
、SelectedItem
或 SelectedText
更改当前选定的值,它们都不会将索引更改为适当的项目。
目前我正在做类似的事情:
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/