1

我有一个绑定到List<string>. 我想将初始化后的可见文本设置为String.Empty.

问题是,无论我做什么,初始化控件后的文本始终是我的 List 的第一个条目(这是预期的,但我无法清除这个预选的文本)

这是我的相关代码:

    public frmPricelist(Pricelist pricelist)
    {
        _pricelist = pricelist;

        InitializeComponent();
        Init();
    }

    private void Init()
    {
        cmbHersteller.Items.Clear();
        cmbHersteller.ComboBox.DataSource = _pricelist.GetHersteller();

        Application.DoEvents(); // Inserted for testing purposes

        cmbHersteller.ComboBox.SelectedText = String.Empty; // does not change the value
        cmbHersteller.ComboBox.Text         = String.Empty; // does not change the value            
    }

也许我只是为了树木而想念森林,但我根本无法让它发挥作用:)。

4

1 回答 1

1

在我看来,最好的方法是实际添加一个空项目。考虑以下:

private void Init()
{
    cmbHersteller.Items.Clear();

    var list = _pricelist.GetHersteller();
    list.Insert(0, "");
    cmbHersteller.ComboBox.DataSource = list;

    cmbHersteller.ComboBox.SelectedIndex = 0;
}
于 2013-12-20T13:25:23.597 回答