C# 源基类中的下拉列表绑定错误

C# 源基类中的下拉列表绑定错误,c#,oop,drop-down-menu,bind,C#,Oop,Drop Down Menu,Bind,我有一个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 {

我有一个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; 
}
List myobject=new List();
myddl.DataSource=myobject;
myddl.DataTextField=“X”;
myddl.DataValueField=“Y”;
myddl.DataBind();
B类:A类
{ 
}
甲级公共课
{  
公共字符串X;
公共字符串Y;
}
X和Y不是myobject的属性,但它们是myobject基类的公共属性,我必须使用myobject

我得到一个错误,说X和Y不是列表的属性


有人知道吗

您应该将
X
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; }
}
public分部类WebForm1:System.Web.UI.Page
{
受保护的无效页面加载(对象发送方、事件参数e)
{
List myobject=new List();
添加(新类b(){X=“1”,Y=“2”});
添加(新类b(){X=“3”,Y=“4”});
myddl.DataSource=myobject;
myddl.DataTextField=“X”;
myddl.DataValueField=“Y”;
myddl.DataBind();
}
}
B类:A类
{
}
甲级公共课
{
公共字符串X{get;set;}
公共字符串Y{get;set;}
}

myobject是什么类型的?这是一种收集类型吗?Dexterer在你发布上述原始问题的部分向你展示代码。。请出示我的物品的样子。。现在来吧DextererDexterer粘贴基类中定义X和Y属性的部分,并更新将dropdowlist与真实属性名称绑定的代码部分如果不粘贴真实代码,则很难找到解决方案。您的列表现在是myobject类的列表,而下面的类是从ClassA继承的ClassB,并且您的基类代码只命名为ClassA。我认为你的问题是一个打字错误,如果没有真正的代码,我将无法帮助你。代码应该是这样的
public class ClassB:a{}public class a{public string X;public string Y;}
这很奇怪,对我来说它工作得很好。您是否可以使用单个webform
WebForm1
创建一个新项目,将
myddl
DropDownList
控件添加到其中,并将上面的代码放入代码隐藏文件中?