2010-03-19 30 views

回答

5

你不能在一個單一的聲明,沒有。您將不得不使用foreach循環遍歷數組,並逐個添加每個項目。如果你打算這麼做,顯然你可以將它封裝在助手或擴展方法中。

如果您將ComboBox.ItemsSource綁定到ObservableCollection(而不是直接操作ComboBox.Items),您可以使用一種技巧避免爲每個單獨的Add添加收集更改通知,這些通知在this question

+0

由於一些奇怪的原因它沒有點擊我的腦海中,我用了一個while循環,通過條目,然後只是輸出它們。謝謝。 – 2010-03-19 01:57:56

-4

試着寫類似的東西在代碼隱藏:

comboBox1.Items.AddRange(新[] { 「黃色」, 「DarkBlue」, 「紅」, 「綠」});

ArrayList的數組=新的ArrayList();
array.Add(「1」);
array.Add(「2」);
comboBox1.Items.AddRange(array);

+0

AddRange沒有這樣的方法,所以我不能使用它,但是謝謝。我已經發現如何去做。 – 2010-03-19 01:57:21

5

你不能,但你可以使用LINQ到模擬的AddRange

嘗試寫這樣的事情:

ComboBox combo; 
    String[] arrOperator = new String[] { "=", "<", "<=", ">", ">=", "<>" }; 

    combo = new ComboBox(); 
    arrOperator.ToList().ForEach(item => comboRetVal.Items.Add(item)); 
0

您可以嘗試

comboBox1.ItemsSource = array; 
+0

OP明確指出「我想添加」,不設置,否則這將工作正常 – Firo 2012-10-26 12:17:48