我正在尝试将comboBox1.SelectedIndex的值设置为comboBox1.Items集合中存在的项的索引。
int selectedIndex = comboBox1.FindStringExact(stringValue);
selectedIndex的结果值为0(>=0(,这意味着该字符串值是在comboBox1.Items集合中找到的。
尽管如此,组合框1.SelectedIndex仍然为-1。
我认为您要查找的表达式应该是:
comboBox1.SelectedIndex = comboBox1.FindStringExact(stringValue);`
如您的文章中所示,分配int selectedIndex
实际上并没有做任何事情,只是将名为selectedIndex
的局部变量设置为0
。换句话说,这是正确的方式,你在标题的问题,但在正文不正确。当你在代码中进行赋值时,请确保你使用的是正确的。
正如我所怀疑的,有一场赛事竞赛。我处理了组合框1_SelectionChangeCommitted和组合框1_SelectedIndexChanged。将值分配给comboBox1_SelectionChangeCommitted中的comboBox1.SelectedIndex引发comboBox1_SelectedIndexChanged事件,该事件再次更改了它。这些说法都是正确的。我申请的内在逻辑是错误的。