2012-12-30 19 views
5

私はたくさんのグーグルグーグルをしました。多く見つかった。残念ながら、まっすぐで、簡単で、最も重要なことは何もありません。私は男がmethodを書いてList<string>をとり、前にItemsを取り除きたいと思ったら、これをList<string>に設定します。最新のコンボボックスのアイテム、最も簡単な方法

現在、私は方法がありますが、エラーはありません。

public void refreshList(List<string> list){ 
    albumList.Items.Clear(); 
    albumList.DataSource = list; 
} 
+0

あなたは(あなたは大きな画像で何をしたいかに応じて)を求めたものではないものの多分便利:ジェネリックリスト対observaleコレクション.. http://www.codeproject.com/Articles/42536/ List-vs-ObservableCollection-vs-InotifyPropertyCha –

答えて

4

あなたは)(albumList.Items.Clearは必要ありません。

このコードはまだ迷って誰のためにうまく

public void refreshList(List<string> list){ 
    albumList.DataSource = list; 
} 
+4

新しい項目はリストに表示されません。 –

+0

試してみたのでコードをもっと表示できますか – phnkha

+0

はい、うまくいきました。以前のリストをリセットしませんでした。今、 'list = null;'を実行してから 'list = new List ();'次に 'refreshList(list);'を呼び出しています。それで、その働き。ありがとうございました:) –

4

データソースにバインドされた場合、Items.Clear();は機能しません。

albumList.DataSource = list; 

か確認するために:これがあるべき

albumList.DataSource = null; 
albumList.DataSource = list; 
+1

これまでの項目は削除されません。むしろ、新しいアイテムは以前のものと一緒に追加されます。 –

12

に動作します。

BindlingListとBindingSourceを使用できます。

BindingList<YOUR_CLASS_TYPE> bindinglist = new BindingList<YOUR_CLASS_TYPE>() 
BindingSource bSource = new BindingSource(); 
bSource.DataSource = bindinglist; 
ComboBox.DataSource = bSource; 

バインディングリストにすべての項目を追加すると、コンボボックス内で自動的に更新されます。

ソート可能なコンボボックスが必要な場合は、並べ替え機能を持つListのように、IListから継承するコンテナを使用してBindingListを構築できます。そのIList参照を並べ替えると、コンボボックス内に再び反映されます。

+1

これにはまだ1つの問題があります。 BindingListをソースとして編集可能なグリッドに設定し、同じBindingList(参照による)が表示用に別のフォームで使用される場合は、グリッド内のアイテムを編集しても、別のフォームのアイテムは更新されません。 あなたの答えを完了するだけです。上記の場合、バインディングリストを使用しているすべてのコントロールのアイテムを更新するには、 'BindingList.ResetBindings();を使用してください。 – Jinx

+0

はい、それは1つの警告です。ありがとう! – Fdej

+0

これを投稿していただきありがとうございます!私はこれを3時間調査し、数十の記事、ブログ、MSDN記事を読んでいました。これらのリソースの多くが推薦していたものではなく、次のような簡単な修正で終了してうれしいです:) – christopheralan88

0

DataSourceを使用している場合は、新しいリストが表示されるようにアイテムをクリアする必要があります。 DataSourceの使用中はクリアできませんので、最初にnullに設定する必要があります。

albumList.DataSource = null; 
albumList.Items.Clear(); 
albumList.DataSource = list; 
関連する問題