データグリッドの特定のセルにカラーを適用しようとしています。私はいくつかの研究をしましたが、私が望むものの代わりに行全体の色を変えることになりました。Wpf-データグリッドの特定のセルにカラーを適用する
私の要件は、特定の列のCellStyle
を定義し、この
データグリッドの特定のセルにカラーを適用しようとしています。私はいくつかの研究をしましたが、私が望むものの代わりに行全体の色を変えることになりました。Wpf-データグリッドの特定のセルにカラーを適用する
私の要件は、特定の列のCellStyle
を定義し、この
です:
<DataGridTextColumn Header="..." Binding="{Binding Name}">
<DataGridTextColumn.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="Foreground" Value="Red" />
</Style>
</DataGridTextColumn.CellStyle>
</DataGridTextColumn>
あなたは条件付きでフォアグラウンドを適用するためにDataTriggers
を使用することができます。
<Style TargetType="DataGridCell">
<Style.Triggers>
<DataTrigger Binding="{Binding Name}" Value="30">
<Setter Property="Foreground" Value="Red" />
</DataTrigger>
</Style.Triggers>
</Style>
ので、そこ <
と>
演算子がXAMLで定義されていない場合は、値がある値よりも小さいか大きい場合はForeground
を設定できるコンバータを使用する必要があります。
興味のあるxamlを使いたくない場合、このコードはおそらく必要になるかもしれません。 (xx、yyは行とコロンの番号)
DataGridCell cell =(YourDgName.Columns [XX] .GetCellContent(DgCagrilar.Items [YY]))親のDataGridCell。 if(cell.Background == Brushes.Pink)cell.Background = Brushes.Plum; else cell.Background = Brushes.Pink;