How to bind collection to WPF:DataGridComboBoxColumn
This is hands down the best solution:
http://wpfthoughts.blogspot.com/2015/04/cannot-find-governing-frameworkelement.html
The idea here is that you declare a CollectionViewSource as a static resource and then declaratively bind it to ItemsSource of the DataGridComboBoxColumn.
Create and bind a static CollectionViewSource:
<Page.Resources>
<CollectionViewSource x:Key="Owners" Source="{Binding Owners}"/>
</Page.Resources>
And then bind your target ItemsSource:
ItemsSource="{Binding Source={StaticResource Owners}}"
The problem lies in that Columns does no inherit DataContext.
See more here Binding in a WPF data grid text column
here blogs.msdn.com/vinsibal/archive/2008/12/17/wpf-datagrid-dynamically-updating-datagridcomboboxcolumn.aspx
and here http://blogs.msdn.com/jaimer/archive/2008/11/22/forwarding-the-datagrid-s-datacontext-to-its-columns.aspx
If your measures are common for all objects, then you can make measures static
public String[] Measures { get; }
And your xaml will use it as it's shown below:
<DataGridComboBoxColumn
Header="Role"
SelectedValueBinding="{Binding Role}"
ItemsSource="{Binding Source={x:Static local:ProjectsDataContext.Roles}}"
DisplayMemberPath="Name"/>
Hopefully, it will help.