0

我有一个 ddl,我正在绑定这样的值;

    List<ClassB> myobject =new List<ClassB>();
    myddl.DataSource = myobject;
    myddl.DataTextField = "X";
    myddl.DataValueField = "Y";
    myddl.DataBind();

public class ClassB: ClassA
{ 
}

public class ClassA
{  
    public string X; 
    public string Y; 
}

X 和 Y 不是 myobject 的属性,但它们是 myobject 基类的公共属性,我必须使用 myobject

我收到错误说 X 和 Y 不是列表的属性。

有人知道吗?

4

1 回答 1

0

您应该将Xand定义Y为读写属性。下面是一个工作代码示例。

public partial class WebForm1 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        List<ClassB> myobject = new List<ClassB>();
        myobject.Add(new ClassB() { X = "1", Y = "2" });
        myobject.Add(new ClassB() { X = "3", Y = "4" });
        myddl.DataSource = myobject;
        myddl.DataTextField = "X";
        myddl.DataValueField = "Y";
        myddl.DataBind();
    }
}

public class ClassB : ClassA
{
}

public class ClassA
{
    public string X { get; set; }
    public string Y { get; set; }
}
于 2013-02-20T09:07:52.297 回答