C# 按键时更新DataGrid样式

C# 按键时更新DataGrid样式,c#,wpf,.net-core,datagrid,C#,Wpf,.net Core,Datagrid,我有一个DataGrid,它根据行是否列为“要删除”来设置行背景的样式。 当加载到表中或滚动时,行的颜色会改变,但不会立即改变 我使用“ctrl+del”标记要删除的选定行。 如何在此按键上获取要更新的行 数据网格实现 <DataGrid.RowStyle> <Style TargetType="DataGridRow"> <Style.Trigger

我有一个DataGrid,它根据行是否列为“要删除”来设置行背景的样式。 当加载到表中或滚动时,行的颜色会改变,但不会立即改变

我使用“ctrl+del”标记要删除的选定行。 如何在此按键上获取要更新的行

数据网格实现

            <DataGrid.RowStyle>
                <Style TargetType="DataGridRow">
                    <Style.Triggers>
                        <Trigger Property="ItemsControl.AlternationIndex" Value="0">
                            <Setter Property="Background" Value="WhiteSmoke" />
                        </Trigger>
                        <Trigger Property="ItemsControl.AlternationIndex" Value="1">
                            <Setter Property="Background" Value="LightGray" />
                        </Trigger>
                        <DataTrigger Value="True">
                            <DataTrigger.Binding>
                                <Binding>
                                    <Binding.Converter>
                                        <local:IsDeletedConverter/>
                                    </Binding.Converter>
                                </Binding>
                            </DataTrigger.Binding>
                            <DataTrigger.Setters>
                                <Setter Property="Background" Value="OrangeRed"/>
                            </DataTrigger.Setters>
                        </DataTrigger>
                    </Style.Triggers>
                    <Setter Property="Background">                        
                        <Setter.Value>
                            <Binding Path="">
                                <Binding.Converter>
                                    <local:ValueToBrushConverter/>
                                </Binding.Converter>
                            </Binding>
                        </Setter.Value>
                    </Setter>
                </Style>
            </DataGrid.RowStyle>

ExpandoObject
替换为实现
INotifyPropertyChanged
接口的自定义类型的对象,并为在
样式中绑定到的
IsDeleted
属性引发
PropertyChanged
事件,而不是绑定到对象本身。@mm8我无法为需要从读取的文件动态创建数据,以便在动态读取文件时创建该类型的实例?
 public class IsDeletedConverter : IValueConverter
    {
        public object Convert(object values, Type targetType, object parameter, CultureInfo culture)
        {
            if (values is ExpandoObject eo)
            {
                if ((Application.Current.MainWindow as MainWindow).LoadedTable.ToDelete.Contains((int)ExpandoUtils.GetExpandoProperty(eo, "id")))
                    return true;
            }
            return false;
        }

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            throw new NotImplementedException();
        }
    }