цвет фона в одной ячейке в WPF Datagrid, а не цвет всех строк - PullRequest
0 голосов
/ 12 февраля 2019

Я написал этот код, чтобы изменить цвет ячейки в WPF mydatagrid, но в результате у меня все строки окрашены, и я не знаю почему.

Style style = this.FindResource("backColor") as Style;
DataGridClientFile.CellStyle = style;


<Style x:Key="backColor" TargetType="DataGridCell">
                <Style.Triggers>
                    <DataTrigger Binding="{Binding Path=Colore}" Value="Red">
                        <Setter Property="Background" Value="Red"/>
                        <Setter Property="Foreground" Value="White"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding Path=Colore}" Value="Green">
                        <Setter Property="Background" Value="Green"/>
                        <Setter Property="Foreground" Value="White"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding Path=Colore}" Value="Yellow">
                        <Setter Property="Background" Value="Yellow"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding Path=Colore}" Value="Cyan">
                        <Setter Property="Background" Value="Cyan"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding Path=Colore}" Value="White">
                        <Setter Property="Background" Value="White"/>
                    </DataTrigger>
                </Style.Triggers>
            </Style>

1 Ответ

0 голосов
/ 14 февраля 2019

Вот решение:

Style style = this.FindResource("backColor") as Style;
Style styleNX = this.FindResource("backColorNX") as Style;
if (DataGridClientFile.Columns.Count >= 14)
            {
                DataGridColumn col = DataGridClientFile.Columns[14];
                col.CellStyle = style;
                DataGridColumn colNX = DataGridClientFile.Columns[15];
                colNX.CellStyle = styleNX;
            }
...