我有一个WPF数据网格数据绑定到一个collectionviewsource,它本身就是一个实体查询
在我的网格中,我有3列Number1,Number2,Number3,实体的所有属性。如果我想添加一个名为SumNumber的列,它等于Number1 + Number2 + Number3,那么最好的方法是什么,这样当我更改Number1时,SumNumber中的值会更新?
提前致谢
我快到了,但是我又收到了另一个错误。请参阅下面的代码片段
public partial class MyEntity
{
public double MyCustomizedProperty{get;set;}
public MyEntity()
{
this.PropertyChanged += Entity_PropertyChanged;
}
void Entity_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
switch (e.PropertyName )
{
case "Date" :
MyCustomizedProperty = DateTime.Now.Second;
ReportPropertyChanged("MyCustomizedProperty");
break;
}
}
}
编译和所有,但当我更改“日期”时,我收到运行时错误:
The property 'SigmaFinal' does not have a valid entity mapping on the entity object. For more information, see the Entity Framework documentation.
我想这是因为该属性不在OnStateManager中。你能告诉我如何解决这个问题吗?
由于
答案 0 :(得分:3)
我会创建一个Converter
来获取所有3个值并返回它们的总和,或者我会扩展Entity Framework类以包含一个额外的属性
以下是扩展EF类以包含额外属性的示例:
public partial class MyEntity
{
public MyEntity()
{
// Hook up PropertyChanged event to alert the UI
// to update the Sum when any of the Values change
this.PropertyChanged += MyEntity_PropertyChanged;
}
void MyEntity_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
switch e.PropertyName
{
case "Value1":
case "Value2":
case "Value3":
ReportPropertyChanged("SumValues");
break;
}
}
public int SumValues
{
get
{
return Value1 + Value2 + Value3;
}
}
}