WPF DataGridCell,Style.Trigger,基于多个样式
我在WPF中遇到了样式问题。 我希望每一行的单元格都是红色的。 当我将两种样式用于单细胞MyCellStyle和RightCellStyle(基于MyCellStyle)时,结果是: 下面是MyCellStyle和RightCellStyle的代码WPF DataGridCell,Style.Trigger,基于多个样式,wpf,xaml,styles,datatrigger,Wpf,Xaml,Styles,Datatrigger,我在WPF中遇到了样式问题。 我希望每一行的单元格都是红色的。 当我将两种样式用于单细胞MyCellStyle和RightCellStyle(基于MyCellStyle)时,结果是: 下面是MyCellStyle和RightCellStyle的代码 <Style x:Key="MyCellStyle" TargetType="DataGridCell"> <Setter Property="Template"> <Setter.Value>
<Style x:Key="MyCellStyle" TargetType="DataGridCell">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="DataGridCell">
<Border Background="{TemplateBinding Background}">
<ContentPresenter VerticalAlignment="Center" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="{StaticResource SelectedRowColor}" />
<Setter Property="BorderBrush" Value="#FFDFE9F5" />
<Setter Property="BorderThickness" Value="1" />
</Trigger>
</Style.Triggers>
这是我设置红色的部分
<DataGrid.Style>
<Style TargetType="DataGrid" BasedOn="{StaticResource {x:Type DataGrid}}">
<Setter Property="CellStyle">
<Setter.Value>
<Style TargetType="DataGridCell" BasedOn="{StaticResource MyCellStyle}">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=IsNew}" Value="True">
<Setter Property="Foreground" Value="Red" />
</DataTrigger>
</Style.Triggers>
</Style>
</Setter.Value>
</Setter>
</Style>
<DataGrid.Style>
<Style TargetType="DataGrid" BasedOn="{StaticResource {x:Type DataGrid}}">
<Setter Property="CellStyle">
<Setter.Value>
<Style TargetType="DataGridCell" BasedOn="{StaticResource MyCellStyle}">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=IsNew}" Value="True">
<Setter Property="Foreground" Value="Red" />
</DataTrigger>
</Style.Triggers>
</Style>
</Setter.Value>
</Setter>
</Style>