我有一个array
ComboBoxes
,每个DataSource
都有自己的ComboBox
,这个Panels
在开头设置,不会再被搞砸了。每个Form
都选择了一些索引(不是0)。
现在,我在Panel
上绘制了ComboBox
网格。每个ComboBox
都与其自己的Form
相关联。根据设定规则,可以在mouseClick
上绘制ComboBox
。以下是规则:
在ComboBox
已连接 - mouseEnter
被指定为已选中 - mouseEnter
。它已经在ComboBox
事件中绘制。
选中ComboBox
- mouseLeave
将替换为已连接的ComboBox
。
在ComboBox
上已连接 - ComboBox
已替换为已选中 - Panels
。
基本上,它会显示上次选择的ComboBoxes
或您当前悬停的那个。
当我启动程序并开始将鼠标悬停在index
上方时,显示了不同的selectedIndex
。但是,经过一些看似随机的时间后,他们的索引会变为0,在ComboBox
显示该项目。
现在,我只在代码中的一个位置更改selectedIndex
的{{1}},并且在测试期间不应该执行该位置 - 并且不是,通过放置一个断点来证明从不触发。
我可以使用ComboBox
更改Panels
作为用户 - 但我不这样做,所以那就是了。我只是将鼠标悬停在ComboBox
上。
我碰巧在检查改变后的SelectedItem
状态后设法暂停了程序。 SelectedIndex
,Text
和SelectedIndexChanged
属性都已更改。有趣的部分? ComboBox
事件从未被解雇。
我不认为这必须对代码做任何事情,但是SelectedIndexChanged
是某种奇怪的行为。
ComboBox可能默认首选索引为选定索引的原因是什么,而不是在此过程中触发SelectedIndex
?
如果没有别的,有没有办法可以监视ComboBox
的{{1}}属性,如果代码发生变化,代码会暂停(就像setter中有断点一样)? / p>