I have this simple application that adds some elements to a combo box:
public partial class Window1 : Window { private ObservableCollection<string> _dropDownValues = new ObservableCollection<string>(); public ObservableCollection<string> DropDownValues { get { return _dropDownValues; } set { _dropDownValues = value; } } private string _selectedValue; public string SelectedValue { get { return _selectedValue; } set { _selectedValue = value; } } public Window1() { InitializeComponent(); DataContext = this; DropDownValues.Add("item1"); DropDownValues.Add("item1"); DropDownValues.Add("item1"); DropDownValues.Add("item1"); DropDownValues.Add("item1"); DropDownValues.Add("item1"); } }
And here is the XAML file:
<Window x:Class="WpfApplication2.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Window1" Height="300" Width="300"> <StackPanel HorizontalAlignment="Left" Margin="10"> <ComboBox Margin="0 0 0 5" ItemsSource="{Binding DropDownValues}" SelectedValue="{Binding SelectedValue}" Width="150"/> </StackPanel> </Window>
Can someone show me how can I set the DataContext from the xaml file instead of initializing in the constructor?
Thanks.
Kobe source share