根据值更改单元格颜色

时间:2019-10-14 16:43:10

标签: wpf datagrid

我有一个数据网格,我的总生产分为几天,我有一个每周要达到的目标。

我需要,如果在星期一未达到目标,则该单元将被涂成黄色,直到达到并被涂成绿色为止,情况都会一样。我的目标是在文本框中手动输入。

我从查询中获取到数据库的datatrigger的值,如果为1,则是因为它在当前一周,否则为0。

当前为绿色,因为它表明我们目前处于哪个星期,我该怎么做?附上我的代码,该代码描绘了我们所处的一周以及每天的生产量,并且应该澄清一下: 我是使用wpf的新手。 希望您能帮助我,谢谢。

                                                                                                     

            <DataGridTextColumn  Binding="{Binding semana}" Header="Semana">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding true}" Value="1">
                                <Setter Property="Background" Value="Green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding true}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>

            </DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Lunes}" Header="Lunes">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding true}" Value="1">
                                <Setter Property="Background" Value="green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding true}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding Lunes}" Value="">
                                <Setter Property="Background" Value="Green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding Lunes}" Value="">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Martes}" Header="Martes">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding true}" Value="1">
                                <Setter Property="Background" Value="green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding true}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding Martes}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Miercoles}" Header="Miércoles">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding true}" Value="1">
                                <Setter Property="Background" Value="green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding true}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding Miercoles}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Jueves}" Header="Jueves">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding true}" Value="1">
                                <Setter Property="Background" Value="green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding Jueves}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding true}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Viernes}" Header="Viernes">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding true}" Value="1">
                                <Setter Property="Background" Value="green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding true}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding Viernes}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Sabado}" Header="Sábado">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding true}" Value="1">
                                <Setter Property="Background" Value="green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding true}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding Sabado}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>
            <DataGridTextColumn Binding="{Binding Total}" Header="total">
                <DataGridTextColumn.ElementStyle>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding true}" Value="1">
                                <Setter Property="Background" Value="green"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding true}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                            <DataTrigger Binding="{Binding total}" Value="0">
                                <Setter Property="Background" Value="LightGray"></Setter>
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </DataGridTextColumn.ElementStyle>
            </DataGridTextColumn>
        </DataGrid.Columns>
    </DataGrid>

0 个答案:

没有答案