<Window x:Class="Binding.Window2"
xmlns="
http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="
http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window2" Height="300" Width="300">
<Window.Resources>
<DataTemplate x:Key="ST_TP">
<Border BorderBrush="Black" BorderThickness="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<StackPanel Orientation="Horizontal">
<TextBlock Width="80" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Text="{Binding Id}"/>
<TextBlock Width="80" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Text="{Binding Name}"/>
<TextBlock Width="80" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Text="{Binding Grade}"/>
</StackPanel>
</Border>
</DataTemplate>
</Window.Resources>
<Grid>
<DataGrid AutoGenerateColumns="False" CanUserAddRows="True" Height="200" Name="dataGrid1" Width="280" HorizontalAlignment="Left">
<DataGrid.Columns>
<DataGridComboBoxColumn x:Name="h1" Header="Id" Width="100" ItemsSource="{Binding ListSource}">
<DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemTemplate" Value="{StaticResource ResourceKey=ST_TP}"></Setter>
<Setter Property="ItemsSource" Value="{Binding ListSource}"></Setter>
</Style>
</DataGridComboBoxColumn.EditingElementStyle>
</DataGridComboBoxColumn>
<DataGridTextColumn Header="Name" Width="100" Binding="{Binding Name}"></DataGridTextColumn>
<DataGridTextColumn Header="Grade" Width="100" Binding="{Binding Grade}"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
</Grid>
</Window>