2017-01-26 3 views
1

以下のコードはリストを持ち、そのリスト内の各文字列アイテムをループし、それをComboBoxに追加します。これは正しく機能しますが、文字列リストとComboBoxを関数に渡して、追加する文字列リストの各項目とともにComboBoxを返す方法があるのではないかと不思議です。関数からComboBoxを返しますか?

例:文字列リストを取得し、各文字列アイテムをリストに追加します。 ComboBoxが1つあればこれは素晴らしいことです。 3つ以上ある場合は、コードの繰り返しを避けるために、リストとComboBoxを渡すとコードが保存されます。

List<string> myList = getList(); 

foreach (string listItem in myList) 
{ 
    myComboBox.Items.Add(listItem); 
} 
+5

'myComboBox.Items.AddRange(myList.ToArray())内から呼び出すことができます;' – fubo

+1

その面白いですあなたはこれを投稿しました、あなたは基本的にあなたの投稿の質問に答えました。 –

答えて

4

あなたは

private void FillCombo(ComboBox myComboBox, List<string> list); 
{ 
    foreach (string listItem in myList) 
    { 
     myComboBox.Items.Add(listItem); 
    } 
    //alternatively, you can add it like fubo suggested in comment 
    //myComboBox.Items.AddRange(myList.ToArray()); 
} 

のようなメソッドを作成して、どこかのコード

List<string> myList = getList(); 
FillCombo(this.comboBox1, myList); 
FillCombo(this.comboBox2, myList); 
// etc... 
+0

私は誰がやったのか、理由は分からなかったが、これはうまく見えた。 – WhyAShortage

+0

それは大したことではありませんが、SOが示唆しているように、なぜ彼女が下降したのか、問題がどこにあるのか、あるいは答えが間違っているのかというコメントを残すとよいでしょう。 – Nino

関連する問題