0

通过执行 Items.Add() 或 Items.AddRange() 调用,如果将 SelectedIndex 设置为 -1,是否可以自动将其设置为 0?

我的第一个猜测是创建一个新事件来监听 Items 属性的变化。

4

1 回答 1

1

如果您不愿意在SelectedIndex = 0之后设置Add(我个人认为这并不太乏味......但对于每个人来说都是他们自己的),那么您可以尝试创建一个自定义控件来为您执行此操作。但是,添加项目时没有事件,因此您必须创建一个新方法。

public class MyComboBox: ComboBox
{
    public void AddItem(object item)
    {
        base.Items.Add(item);
        if (SelectedIndex == -1)
            SelectedIndex = 0;
    }
}

最终,这似乎有点矫枉过正,但通过这种方式是可行的。

于 2012-04-26T02:37:26.087 回答