Intro If you haven't already, you can download the DataGrid v1 bits and source here. DataGridComboBoxColumn has had a make-over since the CTP release. In particular, the whole data binding story has been updated so that you can accomplish basic ComboBox tasks that before required some tedious workarounds. While other stock columns such as DataGridTextColumn and DataGridCheckBoxColumn use Binding for the visual to data hook up, DataGridComboBoxColumn uses a different route with three possible ways to hook up a binding. Here are the APIs that are specific to the DataGridComboBoxColumn: public class DataGridComboBoxColumn : DataGridColumn { public string DisplayMemberPath { get; set; } public IEnumerable ItemsSource { get; set; } public virtual BindingBase SelectedItemBinding { get; set; } public virtual BindingBase SelectedValueBinding { get; set; } public string SelectedValuePath { get; set; } public virtual BindingBase TextBinding { get; set; } } The three mechanisms to hook up the binding are: · SelectedItemBinding · SelectedValueBinding · TextBinding These three bindings basically map to the cell’s content being bound to ComboBox.SelectedItem, ComboBox.SelectedValue, or ComboBox.Text respectively. SelectedValuePath and DisplayMemberPath are convenience methods on a ComboBox control and apply to ComboBox.SelectedValuePath and ComboBox.DisplayMemberBinding respectively. Overall, you can think of these APIs as convenience methods that apply to the ComboBox element of the cell. Let’s go through some use cases. Some examples When the column is bound to a primitive data type such as int, string, or bool, and you want the ComboBox to have a list of similar items to choose from, you can use SelectedItemBinding…