Tak to jde i jinak (lépe). Klasické vykreslení necháte v TextBlocku, ale do CellEditTemplate ho změníte na TextBox, který už lze klasicky editovat, navíc se změny projeví v bindovaných datech (pokud je to žádoucí).
<DataGrid x:Name="u_table" ItemsSource="{Binding}" AutoGenerateColumns="False" ...>
<DataGrid.Columns>
<DataGridTemplateColumn Header="Položka" SortMemberPath="nazev">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Height="18" Source="{Binding image}" />
<TextBlock Margin="5, 0, 0, 0" Text="{Binding nazev}" />
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox Text="{Binding nazev, Mode=TwoWay}"></TextBox>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="Množství" Binding="{Binding mnozstvi}" />
|