Здравствуйте. Есть такая ссылка по моему вопросу: ссылка (свойство ElementStyle). Всё работает, как нужно.
Как теперь сделать так, чтобы во всех колонках DataGrid можно было применить перенос текста на другие строчки? Можно вручную для каждой колонки прописать, но это долго и занимает много кода. Если через стили делать, то я не знаю, как получить доступ к DataGridTextColumn, а после получить доступ к ElementStyle.
Пробовал у DataGrid написать такой код, ничего не получилось:
<DataGrid.Resources>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="TextWrapping" Value="Wrap"/>
</Style>
</DataGrid.Resources>
По этой ссылке я попробовал сделать также для своего проекта. Вот результат:
На всякий случай оставлю свой XAML-код:
<DataGrid x:Name="CatalogDataGrid" Margin="0,5,0,0">
<DataGrid.Resources>
<Style TargetType="TextBlock" x:Key="WrapText">
<Setter Property="TextWrapping" Value="Wrap"/>
</Style>
</DataGrid.Resources>
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}" Header="Название" Width="50" ElementStyle="{StaticResource WrapText}"/>
<DataGridTextColumn Binding="{Binding Description}" Header="Описание" Width="300" ElementStyle="{StaticResource WrapText}"/>
</DataGrid.Columns>
</DataGrid>
С самого начала я думал, что как-то можно в <Window.Resources>
написать стиль для всех существующих контролов DataGrid в окне, чтобы у DataGrid в колонках типа DataGridTextColumn
текст переносился на другую строчку.
Но скорее всего в <Window.Resources>
это сделать невозможно, поэтому для каждой отдельной DataGrid придётся добавлять тег <DataGrid.Resources>
. На сегодняшний день это пока что лучшее решение моего вопроса.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Столкнулся с проблемойНа ПК версии сайта (Широкий экран) при загрузке страницы карусель отображается нормально
Подскажите, пожалуйста, где допущена ошибка в синтаксисе, все не могу разобраться