Sandeep Bansal
Sandeep Bansal

Reputation: 6394

How to use Combo Box AddRange in WPF C#

I have a little problem, I have an array and I want to add that in a Combobox, so I want to use the AddRange method, but it isn't available in WPF, is there a way that I can do it in the combobox?

Thanks.

Upvotes: 5

Views: 10597

Answers (4)

Movingcity
Movingcity

Reputation: 21

You can try

 comboBox1.ItemsSource = array;

Upvotes: 2

BlueWolfy
BlueWolfy

Reputation: 65

You can't but you can use linq to simulate an AddRange

Try write something like that:

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

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

Upvotes: 5

netmajor
netmajor

Reputation: 6585

Try write something like that in codebehind :

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

or

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

Upvotes: -5

itowlson
itowlson

Reputation: 74802

You can't do it in a single statement, no. You will have to loop over the array using foreach, adding each item individually. Obviously you can encapsulate this in a helper or extension method if you plan to do this a lot.

If you're databinding the ComboBox.ItemsSource to an ObservableCollection (rather than manipulating ComboBox.Items directly), there is a trick you can use to avoid getting collection change notifications for each individual Add, described in the answers to this question.

Upvotes: 5

Related Questions