As an option, you can take the native style DataGridRow
and add the desired pair of lines.
<Style x:Key="DataGridRowStyleStateGreen" TargetType="{x:Type DataGridRow}"> <Setter Property="Controls:DataGridRowHelper.SelectionUnit" Value="{Binding SelectionUnit, Mode=OneWay, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type DataGrid}}}"/> <Setter Property="Margin" Value="0"/> <Setter Property="Validation.ErrorTemplate" Value="{x:Null}"/> <Setter Property="ValidationErrorTemplate"> <Setter.Value> <ControlTemplate> <Grid Margin="2,0" ToolTip="{Binding DataContext.ErrorContent, RelativeSource={RelativeSource Self}}" VerticalAlignment="Center"> <Path Data="M31.630585,39.233818L56.261485,14.603018C56.879785,13.984618,57.882285,13.984618,58.500685,14.603018L83.131485,39.233818C83.749885,39.852218,83.749885,40.854718,83.131485,41.473018L58.500685,66.103918C57.882385,66.722218,56.879785,66.722218,56.261485,66.103918L31.630585,41.473018C31.012285,40.854718,31.012285,39.852218,31.630585,39.233818z" Fill="{DynamicResource ControlsValidationBrush}" Height="20" Stretch="Uniform" Width="20"/> <Path Data="M53.781741,31.196677C51.544017,31.196677 49.719241,33.021453 49.719241,35.259177 49.719241,37.496901 51.544017,39.321677 53.781741,39.321677 56.019465,39.321677 57.844241,37.496901 57.844241,35.259177 57.844241,33.021453 56.019465,31.196677 53.781741,31.196677z M49.687991,9.821677L49.719241,10.352927 50.937991,29.821677 56.625491,29.821677 57.875491,9.821677 49.687991,9.821677z" Fill="{DynamicResource ValidationTextBrush}" HorizontalAlignment="Center" Height="10" Stretch="Uniform" VerticalAlignment="Center" Width="10"/> </Grid> </ControlTemplate> </Setter.Value> </Setter> <Style.Triggers> <!--мой триггер--> <DataTrigger Binding="{Binding State}" Value="InProgress"> <Setter Property="Background" Value="GreenYellow"></Setter> </DataTrigger> <!----> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/> </MultiDataTrigger.Conditions> <Setter Property="Background" Value="{DynamicResource MetroDataGrid.HighlightBrush}"/> <Setter Property="Foreground" Value="{DynamicResource MetroDataGrid.HighlightTextBrush}"/> <Setter Property="BorderBrush" Value="{DynamicResource MetroDataGrid.HighlightBrush}"/> </MultiDataTrigger> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/> <Condition Binding="{Binding (Selector.IsSelectionActive), RelativeSource={RelativeSource Self}}" Value="false"/> </MultiDataTrigger.Conditions> <Setter Property="Background" Value="{DynamicResource MetroDataGrid.InactiveSelectionHighlightBrush}"/> <Setter Property="BorderBrush" Value="{DynamicResource MetroDataGrid.InactiveSelectionHighlightBrush}"/> <Setter Property="Foreground" Value="{DynamicResource MetroDataGrid.InactiveSelectionHighlightTextBrush}"/> </MultiDataTrigger> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="true"/> </MultiDataTrigger.Conditions> <Setter Property="Background" Value="{DynamicResource MetroDataGrid.MouseOverHighlightBrush}"/> <Setter Property="BorderBrush" Value="{DynamicResource MetroDataGrid.MouseOverHighlightBrush}"/> </MultiDataTrigger> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false"/> </MultiDataTrigger.Conditions> <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/> </MultiDataTrigger> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false"/> <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/> </MultiDataTrigger.Conditions> <Setter Property="Foreground" Value="{DynamicResource MetroDataGrid.HighlightTextBrush}"/> <Setter Property="Background" Value="{DynamicResource MetroDataGrid.DisabledHighlightBrush}"/> <Setter Property="BorderBrush" Value="{DynamicResource MetroDataGrid.DisabledHighlightBrush}"/> </MultiDataTrigger> </Style.Triggers> </Style>
} "Height =" <Style x:Key="DataGridRowStyleStateGreen" TargetType="{x:Type DataGridRow}"> <Setter Property="Controls:DataGridRowHelper.SelectionUnit" Value="{Binding SelectionUnit, Mode=OneWay, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type DataGrid}}}"/> <Setter Property="Margin" Value="0"/> <Setter Property="Validation.ErrorTemplate" Value="{x:Null}"/> <Setter Property="ValidationErrorTemplate"> <Setter.Value> <ControlTemplate> <Grid Margin="2,0" ToolTip="{Binding DataContext.ErrorContent, RelativeSource={RelativeSource Self}}" VerticalAlignment="Center"> <Path Data="M31.630585,39.233818L56.261485,14.603018C56.879785,13.984618,57.882285,13.984618,58.500685,14.603018L83.131485,39.233818C83.749885,39.852218,83.749885,40.854718,83.131485,41.473018L58.500685,66.103918C57.882385,66.722218,56.879785,66.722218,56.261485,66.103918L31.630585,41.473018C31.012285,40.854718,31.012285,39.852218,31.630585,39.233818z" Fill="{DynamicResource ControlsValidationBrush}" Height="20" Stretch="Uniform" Width="20"/> <Path Data="M53.781741,31.196677C51.544017,31.196677 49.719241,33.021453 49.719241,35.259177 49.719241,37.496901 51.544017,39.321677 53.781741,39.321677 56.019465,39.321677 57.844241,37.496901 57.844241,35.259177 57.844241,33.021453 56.019465,31.196677 53.781741,31.196677z M49.687991,9.821677L49.719241,10.352927 50.937991,29.821677 56.625491,29.821677 57.875491,9.821677 49.687991,9.821677z" Fill="{DynamicResource ValidationTextBrush}" HorizontalAlignment="Center" Height="10" Stretch="Uniform" VerticalAlignment="Center" Width="10"/> </Grid> </ControlTemplate> </Setter.Value> </Setter> <Style.Triggers> <!--мой триггер--> <DataTrigger Binding="{Binding State}" Value="InProgress"> <Setter Property="Background" Value="GreenYellow"></Setter> </DataTrigger> <!----> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/> </MultiDataTrigger.Conditions> <Setter Property="Background" Value="{DynamicResource MetroDataGrid.HighlightBrush}"/> <Setter Property="Foreground" Value="{DynamicResource MetroDataGrid.HighlightTextBrush}"/> <Setter Property="BorderBrush" Value="{DynamicResource MetroDataGrid.HighlightBrush}"/> </MultiDataTrigger> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/> <Condition Binding="{Binding (Selector.IsSelectionActive), RelativeSource={RelativeSource Self}}" Value="false"/> </MultiDataTrigger.Conditions> <Setter Property="Background" Value="{DynamicResource MetroDataGrid.InactiveSelectionHighlightBrush}"/> <Setter Property="BorderBrush" Value="{DynamicResource MetroDataGrid.InactiveSelectionHighlightBrush}"/> <Setter Property="Foreground" Value="{DynamicResource MetroDataGrid.InactiveSelectionHighlightTextBrush}"/> </MultiDataTrigger> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="true"/> </MultiDataTrigger.Conditions> <Setter Property="Background" Value="{DynamicResource MetroDataGrid.MouseOverHighlightBrush}"/> <Setter Property="BorderBrush" Value="{DynamicResource MetroDataGrid.MouseOverHighlightBrush}"/> </MultiDataTrigger> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false"/> </MultiDataTrigger.Conditions> <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/> </MultiDataTrigger> <MultiDataTrigger> <MultiDataTrigger.Conditions> <Condition Binding="{Binding (Controls:DataGridRowHelper.SelectionUnit), RelativeSource={RelativeSource Self}}" Value="FullRow"/> <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false"/> <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/> </MultiDataTrigger.Conditions> <Setter Property="Foreground" Value="{DynamicResource MetroDataGrid.HighlightTextBrush}"/> <Setter Property="Background" Value="{DynamicResource MetroDataGrid.DisabledHighlightBrush}"/> <Setter Property="BorderBrush" Value="{DynamicResource MetroDataGrid.DisabledHighlightBrush}"/> </MultiDataTrigger> </Style.Triggers> </Style>