如果可能的话,我希望通过绑定实现以下目标…
我有一个WPF数据网格绑定到一个ObservableCollection
public class Product
{
public string Code { get; set; }
public string Desc { get; set; }
public bool Updated { get; set; }
}
My grids DataContext is被设置为observable collection。
我想实现的是…
- 当用户更改数据网格中的一行时,Product的Updated字段更改为"true"。
- 因此,我可以以某种方式绑定网格的行颜色来显示不同的颜色,这将表明用户这一行尚未保存。
我认为,我将需要实现INotifyPropertyChanged来实现这一点,但不确定究竟如何做到这一点。另外,网格上是否有一个绑定属性来确保对UI所做的更改会更新后备存储?
欢呼。
-
你的
Product
类应该实现INPC
,所以对Updated
的绑定更新。您还可以更改所有属性的设置,将
Updated
设置为true
-
你可以触发属性:
<DataGrid.RowStyle> <Style TargetType="DataGridRow"> <Style.Triggers> <DataTrigger Binding="{Binding Updated}" Value="True"> <Setter Property="Background" Value="Orange"/> </DataTrigger> </Style.Triggers> </Style> </DataGrid.RowStyle>