행 선택 이벤트가 작동하지 않는 이유 중 일부가 작동하지 않습니다.
- DataGridCell에 대한 스타일 설정
- 템플릿 열 사용
- 트리거는 DataGridRow에서 설정됩니다.
이것이 나를 도왔습니다. DataGridCell의 스타일 설정
<Style TargetType="{x:Type DataGridCell}">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="Green"/>
<Setter Property="Foreground" Value="White"/>
</Trigger>
</Style.Triggers>
</Style>
그리고 내부에 레이블이있는 템플릿 열을 사용했기 때문에 RelativeSource 바인딩을 사용하여 Foreground 속성을 컨테이너 Foreground에 바인딩했습니다.
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Label Content="{Binding CategoryName,
Mode=TwoWay,
UpdateSourceTrigger=LostFocus}"
Foreground="{Binding Foreground,
RelativeSource={RelativeSource Mode=FindAncestor,
AncestorLevel=1,
AncestorType={x:Type DataGridCell}}}"
Width="150"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>