C# 多态绑定源
我有一个由3个类组成的类层次结构:C# 多态绑定源,c#,.net,winforms,data-binding,polymorphism,C#,.net,Winforms,Data Binding,Polymorphism,我有一个由3个类组成的类层次结构: Customer { public int Id {get; set;} public string Phone {get; set;} public string Address {get; set;} public abstract string Description {get;} } Person: Customer { public string Name { get; set; } public string
Customer
{
public int Id {get; set;}
public string Phone {get; set;}
public string Address {get; set;}
public abstract string Description {get;}
}
Person: Customer
{
public string Name { get; set; }
public string Surname { get; set; }
public overrides string Description { get { return this.Name + " " + this.Surname; } }
}
Company: Customer
{
public string CompanyName {get; set;}
public overrides string Description { get { return CompanyName; } }
}
我有一个带有BindingSource的表单,它根据客户从对象数据源获取数据,我希望使用相同的表单输入和编辑公司和个人的数据
我这里有几个问题:
那个人不应该是你们的基础阶级吗?公司真的是一个客户和一个人吗?@SteveWellens不,我想要的是我定义的类层次结构。个人和公司都是客户。真正的问题不在于客户、公司和人,我简化了clearity的案例。对于从哪个类派生出哪个类的问题并不重要,这里的重点是如何在多态数据源上实现数据绑定,并使用派生类的属性绑定控件。您可以在这里了解一些想法: