[c#] C#更新綁定到通用列表的組合框


Answers

Question

我的窗體上有一個組合框,它綁定到像這樣的字符串的通用列表:

private List<string> mAllianceList = new List<string>();

private void FillAllianceList()
{
    // Add alliance name to member alliance list
    foreach (Village alliance in alliances)
    {
        mAllianceList.Add(alliance.AllianceName);
    }

    // Bind alliance combobox to alliance list
    this.cboAlliances.DataSource = mAllianceList;
}

用戶可以添加或刪除組合框中的項目。
我已經在其他地方讀過,只要增加或刪除通用列表中的項目,組合框的內容就會自動更新; 如果我使用Sort(),也會發生同樣的事情。
但由於某種原因,我不能做這個工作。 我可以看到組合框的DataSource屬性正確更新,因為我添加/刪除/排序項目,但顯示在組合框中的內容不是在DataSource屬性中的內容。

我肯定錯過了什麼或做錯了什麼。
提前致謝!

編輯:
我選擇的答案解決了添加和刪除的問題,但BindingList對象無法排序,這對我來說是必要的。 我發現了一個解決方案,通過繼承BindingList並添加排序功能來構建自定義類,但是我想知道在我的情況下是否有更簡單的解決方案。
有關如何輕鬆解決這個問題的任何建議?






Related