Во-первых, название может быть не очень хорошим.
Я часто использую WPF 4 DataGrid
. Одна особенность, которую я хотел бы иметь, состоит в том, чтобы выделить мышь над строкой. Моя первая попытка изменить цвет фона с помощью Trigger
на DataGridRow
. Однако существует конфликт с ячейками данных только для чтения, см. Мой другой пост здесь . Теперь следующая лучшая вещь, которую я могу сделать, это добавить рамку на указатель мыши над строкой. Это легко сделать с помощью этого стиля:
<Style TargetType="DataGridRow">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="BorderBrush" Value="Red"/>
</Trigger>
</Style.Triggers>
</Style>
Проблема в том, что некоторые из DataGrid
имеют столбцы звездного размера, и на них обычно не отображается горизонтальная полоса прокрутки. Однако с этим стилем Trigger
, поскольку он добавляет одну единицу границы, полоса прокрутки становится видимой, когда мышь находится над сеткой. Я думал, что это можно решить, если бы я мог сделать звездный столб немного меньше. Является ли это возможным? Или у тебя есть другая идея?
РЕДАКТИРОВАТЬ: Даже если я изменю значение толщины границы на "1 1 0 1" (чтобы сделать его без полей справа), полоса прокрутки все еще отображается.