C# 如何刷新列表框的项目?
可能重复:C# 如何刷新列表框的项目?,c#,winforms,listbox,C#,Winforms,Listbox,可能重复: 让我们考虑一下这个小代码: listbox.DataSource = base_items; listbox.DisplayMember = "Name"; // ... a bit later in the program base_items.Add( new Base_Item("Unnamed") ); 从这一点上讲,如何使列表框更新其项目?我查看更新的唯一方法是关闭窗口并重新加载 只需删除并再次添加数据绑定即可。 您可以创建可在首次加载和添加新项时使用的方法:
让我们考虑一下这个小代码:
listbox.DataSource = base_items;
listbox.DisplayMember = "Name";
// ... a bit later in the program
base_items.Add( new Base_Item("Unnamed") );
从这一点上讲,如何使列表框更新其项目?我查看更新的唯一方法是关闭窗口并重新加载 只需删除并再次添加数据绑定即可。 您可以创建可在首次加载和添加新项时使用的方法:
void BindData()
{
listBox.DataSource = null;
listBox.DataSource = base_items;
listbox.DisplayMember = "Name";
}
下面是添加新项和刷新列表框的代码:
base_items.Add(new Base_Item("Unnamed"));
BindData();
如Marc G的回答中所述 如果知道列表需要刷新,只需更新列表框的
DisplayMember
listbox.DisplayMember = "";
listbox.DisplayMember = "Name";
哇,奇怪的方法但很有效。非常感谢,它很有效:D我应该考虑将它设为空。。。