WPFにのデータグリッドには、セル内にコンボボックスを出すことが出来る「DataGridComboBoxColumn」というクラスがあります。こんな感じで使います。
<DataGridComboBoxColumn Header="AA" Width="95" ItemsSource="{StaticResource HogeList}">
<DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="{x:Type ComboBox}">
<EventSetter Event="SelectionChanged" Handler="ComboBox_SelectionChanged" />
</Style>
</DataGridComboBoxColumn.EditingElementStyle>
</DataGridComboBoxColumn>
しかし、これがWPFの変なクセなんですけど、DataGridComboBoxColumnを使う場合、データグリッド上は空白のセルで表示されます。ダブルクリックするとか、セルが編集モードにならないと、コンボボックスが表示されません。なんでやねん。
解決策はこのように変えてください。DataGridTemplateColumnを使います。
https://stackoverflow.com/questions/60389372/how-to-always-show-combobox-in-data-grid
<DataGridTemplateColumn Header="AA" Width="95">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{StaticResource HogeList}"
SelectionChanged="ComboBox_SelectionChanged"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
これだけで動きます。CellEditingTemplateの記載は不要です。ない場合は、CellTemplateと同じになるっぽいんで。