当datarow不可见时,它会在它再次可见时立即改变它的背景颜色,反之亦然

时间:2015-02-02 15:05:28

标签: c# wpf

我设法你可以将单行的bg颜色设置为绿色。但是只要该行不可见,它就会将bg颜色更改为我设置的AlternatingRowBackground。这是我的代码:

<Window.Resources>
    <Style TargetType="DataGridRow">
        <Style.Triggers>
            <DataTrigger Binding="{Binding Done}" Value="True">
                <Setter Property="Background" Value="Green" />
            </DataTrigger>
        </Style.Triggers>
    </Style>
</Window.Resources>
//...
<DataGrid Name = "DG" AutoGenerateColumns="False" IsSynchronizedWithCurrentItem="True" AlternatingRowBackground="LightGray" AlternationCount="2">
        <DataGrid.Columns>
            <DataGridTextColumn Header="Done" Binding="{Binding Done}"></DataGridTextColumn>
        </DataGrid.Columns>
 </DataGrid>

我正在使用WPF和C#

1 个答案:

答案 0 :(得分:2)

那是因为你使用AlternatingRowBackground="LightGray"。你说,每隔一行应该用浅灰色着色,而不是你伤心,有些是绿色的。在我的评估中,他(编译器等)很困惑,不知道该怎么做,所以它将颜色改为绿色和灰色。所以只需删除AlternatingRowBackground="LightGray"

即可