繁体   English   中英

WPF:DataGridCell覆盖行样式的颜色

[英]WPF: DataGridCell override the row style color

我有一个数据网格。 我希望该列的背景之一是不同的颜色。 我希望单元格背景完全是深蓝色或黑色。 不是红色+黑色或红色+深蓝色的组合。 我可以做些什么来覆盖特定列的行颜色吗?

<ResourceDictionary> 
<Style TargetType="DataGridRow">
            <Style.Triggers>
                <DataTrigger Binding="{Binding Side}" Value="SELL">
                    <Setter Property="Background" Value="Red"></Setter>
                    <Setter Property="Foreground" Value="White"></Setter>
                </DataTrigger>
            </Style.Triggers>
        </Style>

    <Style x:Key="ColumnBeThisColor" TargetType="{x:Type DataGridCell}">
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="HorizontalAlignment" Value="Right"/>
        <Setter Property="Background" Value="Black"/>
        <Style.Triggers>
            <DataTrigger Binding="{Binding ColumnA}" Value="True">
                <Setter Property="Background" Value="DarkBlue" />
                <Setter Property="Foreground" Value="White" />
            </DataTrigger>
            <DataTrigger Binding="{Binding ColumnA}" Value="False">
                <Setter Property="Background" Value="Black" />
                <Setter Property="Foreground" Value="White" />
            </DataTrigger>           
        </Style.Triggers>
    </Style>
</ResourceDictionary>



<DataGridTextColumn Header="ColumnOneColor" CellStyle="{StaticResource ColumnBeThisColor}" Width="60" Binding="{Binding Path=ThisColumn}"/>

很好。但文字未在右侧下方显示 在此处输入图片说明

这是向右对齐,但背景不是完全黑色 在此处输入图片说明

另外-我怎么没有红色边框?

我的风格是targettype是datagridcell。 我还有另一种样式,其目标类型是文本块。 我相应地设置了cellstyle和elementstyle。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM