Я пытаюсь использовать ComboBox в DataGrid, который позволит пользователю выбрать значение из другой таблицы. Я использую класс ViewModel в качестве DataContext, и он содержит ObservableCollection для терминалов и еще один для TerminalTypes.
Привязка к сетке в порядке, все строки заполнены, и все столбцы DataGridTextColumns показывают правильные данные, однако мой ComboBox пуст.
Я знаю, что коллекция ObservableCollection, к которой я пытаюсь привязаться, заполнена, и если я перемещаю ComboBox за пределы DataGrid, он работает как положено.
<my:DataGrid Name="MenuDetailGrid" AutoGenerateColumns="False" ItemsSource="{Binding Terminals}">
<my:DataGrid.Columns>
<my:DataGridTextColumn Header="Terminal Type ID" Binding="{Binding TERMINAL_TYPE_ID}" IsReadOnly="True" />
<my:DataGridTemplateColumn Header="Terminal Type">
<my:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox DisplayMemberPath="TTYPE_NAME" SelectedValuePath="TERMINAL_TYPE"
SelectedValue="{Binding TERMINAL_TYPE_ID}"
ItemsSource="{Binding TerminalTypes}" />
</DataTemplate>
</my:DataGridTemplateColumn.CellTemplate>
</my:DataGridTemplateColumn>
Очевидно, что поведение связывания в ComboBox отличается, когда он является частью DataGrid, но я немного озадачен, почему?
Может кто-нибудь помочь мне понять, что я делаю не так?