2012-02-06 14 views
0

List<string>ComboBoxを同期させる方法はありますか?コンボボックスとリストを同期させる<string> [C#]

私の持っているものは、ComboBoxで、Listの変更に応じてコンテンツを自動的に更新します。

私はComboBox.DataSourceプロパティを使用して試してみたが、これはコンボボックスを更新しません、それは一度だけ、それを埋め、それはすべてのその後ですので...

答えて

2

ObservableCollection<string>であなたのList<string>を交換してみてください。

+0

それは私と同じ結果が得られるので、コンボボックス – Jsncrdnl

+0

あなたがデータバインディングを使用していますが動作しない、事は、私はおそらくそれを悪い方法を使用しているということです。 ..どのようにComboBoxのデータリソースとしてそれを設定しますか?私は '.DataSource'を試してみましたが、うまくいかなかったのですが、' .DataBindings'を使っている場合は型が受け入れられません... 'ItemsSource'を試したところ、プロパティは存在しません。 – Dominik

+0

のItemsSourceプロパティを使用している場合...それは – Jsncrdnl

4

BindingSourceオブジェクトを使用してください。

List<string> list = new List<string>(); 
BindingSource bsource=new BindingSource(); 

//Set list dataSource 
bsource.DataSource = list; 
comboBox1.DataSource = bsource; 

//Now add an element via Binding object 
bsource.Add("One"); 
bsource.Add("Two"); 

それとものIListのアダプタのラッパーを作成ArrayList.Adapter方法を試してください。

ArrayList items;

items=ArrayList.Adapter(comboBox1.Items); 
items.Add("one"); 
+0

これは 'BindingSource'オブジェクトを使って動作します!残っている問題は1つだけです:私はこのリストを使用して多くのコンボボックスをインスタンス化し、すべてのコンボボックスは一緒に同期されています... – Jsncrdnl

関連する問題