不好意思写错了一点,应该是
dropDownList1.DataTextField = "Person.Name" 

解决方案 »

  1.   

    ArrayList objList = new ArrayList();
    objList.Add(你自己的对象);GridView.DataSource = objList;
    GridView.DataBind();
      

  2.   

    <%# ((Person)Container.DataItem).Id %>
      

  3.   

    to ryoma_fly : 我就是按照你的方法将很多个对象Add到ArrayList中去了,问题是,被加入的对象中有一个属性也是对象(Person),我需要DataGrid显示Person.Name ,你那样写是无法绑定Person.Name的
      

  4.   

    to youbl :   谢谢! 如果CodeBehind 怎么写?
      

  5.   

    CodeBehind?绑定到DataGrid,也是一样
    Person tmp = (Person)e.Item.DataItem;如果绑定到DropDownList,看如下示例代码:
    public class test : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Person tmp;
            List<Person> arr = new List<Person>();
            tmp = new Person("a");
            arr.Add(tmp);        tmp = new Person("b");
            arr.Add(tmp);        lst1.DataSource = arr;
            lst1.DataTextField = "id";
            lst1.DataBind();
        }}class Person
    {
        public Person(string id)
        {
            this.id = id;
        }
        private string id;
        public string Id
        {
            get { return id; }
            set { id = value; }
        }
    }
      

  6.   

    楼上没理解我的意思, 我要用DataGrid和DropDownList(两个控件都有这个问题) 绑定 Department,并且要显示 Person.Name 
    环境:Framework 1.1 我的类是这样的,比如:class Department
    {
        public Department()
        {
            
        }
        private string id;
        private Person person;//这个属性本身也是一个对象    public string Id
        {
            get { return id; }
            set { id = value; }
        }    public Person MyPerson
        {
            get { return person; }
            set { person= value; }
        }
    }
    class Person
    {
        public Person()
        {    }
        private string name;
        public string Name
        {
            get { return name; }
            set { name = value; }
        }
    }