通过执行 Items.Add() 或 Items.AddRange() 调用,如果将 SelectedIndex 设置为 -1,是否可以自动将其设置为 0?
我的第一个猜测是创建一个新事件来监听 Items 属性的变化。
如果您不愿意在SelectedIndex = 0
之后设置Add
(我个人认为这并不太乏味......但对于每个人来说都是他们自己的),那么您可以尝试创建一个自定义控件来为您执行此操作。但是,添加项目时没有事件,因此您必须创建一个新方法。
public class MyComboBox: ComboBox
{
public void AddItem(object item)
{
base.Items.Add(item);
if (SelectedIndex == -1)
SelectedIndex = 0;
}
}
最终,这似乎有点矫枉过正,但通过这种方式是可行的。