[英]WPF: binding to dependency property of a class that inherits a user control base class
[英]MVC3 Binding an Object property that inherits from a base class
我试图找出将表单发布到控制器时是否可以做我想做的事情。
假设我的课:
public class ObjectToBeBound {
public int Id {get;set;}
public List<BaseObject> Items {get;set;}
}
public class Child1 : BaseObject {
public string ExtraField {get;set;}
}
public class Child2 : BaseObject {
public string OtherField {get;set;}
}
在页面上,Items属性将是“ Child1”和“ Child2”对象的混合。 但是,当我发布表单时,由于该属性被定义为“ BaseObject”的列表,因此我仅获得在“ BaseObject”上定义的字段。
我考虑创建一个自定义模型绑定程序,但我无法弄清楚是否可以专门绑定对象的属性,因此可以将Item [0]绑定为Child1,将Item [1]和Item [2]绑定为Child2。 我只看到了为整个“ ObjectToBeBound”对象指定特定类型的方法。
我可以在自定义模型联编程序中手动分配每个属性,但是我想知道是否缺少一种更简单的方法。 有任何想法吗?
我认为您可以使用反射来找出列表中对象的类型,然后可以将其强制转换为特定的Child。 强制转换后,您应该可以使用子对象属性
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.