4

我有一个小问题,我有一个数组,我想在组合框中添加它,所以我想使用 AddRange 方法,但它在 WPF 中不可用,有没有办法可以在组合框中做到这一点?

谢谢。

4

4 回答 4

5

你不能在一个单一的声明中做到这一点,不。您将不得不使用 foreach 遍历数组,分别添加每个项目。显然,如果您打算经常这样做,您可以将其封装在帮助程序或扩展方法中。

如果您将 ComboBox.ItemsSource 数据绑定到 ObservableCollection(而不是直接操作 ComboBox.Items),则可以使用一个技巧来避免为每个单独的 Add 获取集合更改通知,如该问题的答案中所述。

于 2010-03-19T01:45:24.023 回答
5

你不能,但你可以使用 linq 来模拟 AddRange

试着写这样的东西:

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

    combo = new ComboBox();
    arrOperator.ToList().ForEach(item => comboRetVal.Items.Add(item));
于 2011-09-21T20:06:00.127 回答
1

你可以试试

 comboBox1.ItemsSource = array;
于 2012-03-22T03:45:07.840 回答
-5

尝试在代码隐藏中编写类似的内容:

comboBox1.Items.AddRange(new[] { "Yellow", "DarkBlue", "Red", "Green" });

或者

ArrayList 数组 = new ArrayList();
array.Add("1");
array.Add("2");
comboBox1.Items.AddRange(array);

于 2010-03-19T01:45:42.883 回答