В WPF я имею ссылку на DataGridCell и хотел бы получить его содержимое. Я имел обыкновение иметь эту ячейку в DataGridTextColumn и мог получить содержимое, как это:
var text = cell.Content as TextBlock;
Но это больше не работает, поскольку ячейка находится в DataGridTemplateColumn, хотя я и указал TextBlock в качестве DataTemplate для этого столбца. Есть ли еще способ достичь этого?
РЕДАКТИРОВАТЬ, чтобы уточнить проблему. Следующий код работает как задумано:
<!-- XAML -->
<DataGridTextColumn Header="Autor" Width="*" Binding="{Binding Author}" />
//C#
var block = _selectedCell.Content as TextBlock;
var text = block.Text; //text contains the string that is also displayed by the grid in that call
Если я, однако, использую TemplateColumn, код не будет работать, потому что блок будет нулевым.
<DataGridTemplateColumn Header="Autor" Width="*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Name="txtAutor" Text="{Binding Author}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
Есть ли способ получить содержимое ячеек (в моем случае это строка)?