newman
newman

Reputation: 6911

WPF: how to bind ComboBox ItemsSource in code?

I need to convert this following XAML into code-behind:

<ComboBox SelectedItem="{Binding Level}" ItemsSource="{Binding Levels}" />

However, this code doesn't compile:

new ComboBox() { SelectedItem = new Binding("Level"), ItemsSource = new Binding("Levels") }

The error: "Cannot implicitly convert type 'System.Windows.Data.Binding' to 'System.Collections.IEnumerable'. An explicit conversion exists (are you missing a cast?)". How do I cast?

Upvotes: 2

Views: 10647

Answers (1)

HCL
HCL

Reputation: 36785

ComboBox cbo=new ComboBox();
cbo.SetBinding(ComboBox.SelectedItemProperty,new Binding("Level"){ /* set properties here*/});
cbo.SetBinding(ComboBox.ItemsSourceProperty,new Binding("Levels"));
....

Upvotes: 3

Related Questions