3

重複の可能性:
C# 強制的に ListBox に要素を更新させる

この小さなコードを考えてみましょう:

listbox.DataSource = base_items;
listbox.DisplayMember = "Name";
// ... a bit later in the program
base_items.Add(  new Base_Item("Unnamed")  );

この時点から、リストボックスにアイテムを更新させるにはどうすればよいですか? 更新を確認する唯一の方法は、ウィンドウを閉じて再度リロードすることです。

4

2 に答える 2

8

データバインディングを削除して再度追加するだけです。最初の読み込み時と新しいアイテムが追加されたときに使用できるメソッドを作成できます。

    void BindData()
    {
        listBox.DataSource = null;
        listBox.DataSource = base_items;
        listbox.DisplayMember = "Name";
    }

新しいアイテムを追加してリストボックスを更新するコードは次のとおりです。

    base_items.Add(new Base_Item("Unnamed"));
    BindData();
于 2012-12-21T23:51:29.913 に答える