WPF DataGrid实体框架:是否可以将datagrid列绑定到方法/函数?

时间:2010-05-18 09:38:01

标签: wpf datagrid frameworks entity

我想知道是否可以将gridcolumn(字段)绑定到实体的方法或函数?

例如,我有两个实体Person和Company,它们都继承了抽象实体Addressee。在我的网格中,我列出了所有收件人(包括个人和公司)。我在数据网格中有一个列,名称,我希望绑定到函数GetName()。此功能是实体收件人的一部分,根据收件人的类型,它返回CompanyName(如果是公司)或FirstName +''+ LastName(如果是人)。

我也尝试添加一个具有属性Name的部分类Addressee,该属性与所描述的函数完全相同,但是当我保存到数据库时这会导致因为数据库中不存在列名。

有人可以帮帮我吗? : - )

1 个答案:

答案 0 :(得分:1)

这就是 ViewModel 的诞生方式。您不应该根据您的视图更改模型。而是创建一个

的类
  • 公开视图
  • 所需的Model属性
  • 保留其他派生属性。

public class AddresseeViewModel
{    
    private readonly Addressee addressee; //Your Model
    public string FirstName //Your FirstName Property
    {
        get
        {
            return addressee.FirstName;
        }
        set
        {
            addressee.FirstName = value;
            OnPropertyChanged("FirstName");
        }
    }
    public string Name
    {
        // Add your Name Property Logic
    }
}