Coo*_*ain 8 c# combobox winforms c#-4.0
我google了很多.发现了很多.不幸的是,没有什么是直的,简单的,最重要的是,简单.我想要一些人写一个method拿a List<string>并删除之前的Items,然后设置它List<string>.
目前我有一个方法,但它没有错误.
public void refreshList(List<string> list){
albumList.Items.Clear();
albumList.DataSource = list;
}
Run Code Online (Sandbox Code Playgroud)
小智 16
对于任何仍在疑惑的人.
您可以使用BindlingList和BindingSource.
BindingList<YOUR_CLASS_TYPE> bindinglist = new BindingList<YOUR_CLASS_TYPE>()
BindingSource bSource = new BindingSource();
bSource.DataSource = bindinglist;
ComboBox.DataSource = bSource;
Run Code Online (Sandbox Code Playgroud)
您将所有项目添加到绑定列表中,它们将在组合框中自动更新.
如果你想要一个可排序的组合框,你可以用一个继承自IList的容器构造BindingList,比如具有sort函数的List.然后,您可以对IList引用进行排序,它将在组合框中再次反映出来.
你不需要albumList.Items.Clear();
这段代码工作得很好
public void refreshList(List<string> list){
albumList.DataSource = list;
}
Run Code Online (Sandbox Code Playgroud)
当绑定到数据源时,Items.Clear();不起作用。这应该是:
albumList.DataSource = list;
Run Code Online (Sandbox Code Playgroud)
或者确定:
albumList.DataSource = null;
albumList.DataSource = list;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50781 次 |
| 最近记录: |