2017-11-13 6 views
1

행 머리글이 작은 텍스트로 채워지는 WPF DataGrid가 있습니다.이 행을 강조 표시 할 때까지 텍스트가 흰색으로 변하고 거의 볼 수 있습니다 : 블랙 유지하도록 강제하기위한 시도에서 선택한 WPF DataGrid 행 머리글의 색을 변경하는 방법

enter image description here

가, 내가 IsSelected 트리거 또한 설정된 색상 명시 적 DataTemplate 모두를 포함하는 다음 코드를 설정합니다.

<DataGrid.RowStyle> 
    <Style TargetType="DataGridRow"> 
     <Style.Triggers> 
      <Trigger Property="IsSelected" Value="True"> 
       <Setter Property="Foreground" Value="Black"/> 
      </Trigger> 
     </Style.Triggers> 
     <Setter Property="HeaderTemplate"> 
      <Setter.Value> 
       <DataTemplate> 
        <TextBlock Foreground="Black" Text="{Binding}" /> 
       </DataTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
</DataGrid.RowStyle> 

불행히도 이들 중 어느 것도 효과가 없습니다. 행은 선택 취소 될 때까지 텍스트가 완고하게 흰색으로 유지됩니다.

이 텍스트를 선택하면 어떻게 검은 색 (또는 다른 색)으로 유지할 수 있습니까?

+0

트리거를 템플릿으로 이동하십시오. – Steve

+0

셀 스타일에도 사용하십시오. –

+0

@ 스티브 트릭을했습니다! 나는 상자 밖에서 (또는, 어, XAML 요소) 조금 생각하고 있다고 생각한다. 답변을 게시하면 받아 들일 수 있습니다. – Dan

답변

0

스타일 트리거는 헤더의 템플리트 항목 대신 행 자체에 정의됩니다. 간단히 트리거 정의를 헤더 템플릿으로 이동하면 트릭을 수행 할 수 있습니다.