当前位置: 代码迷 >> ASP.NET >> 怎么创建一个arraylist结构体数组,即元素为结构体的 arraylist
  详细解决方案

怎么创建一个arraylist结构体数组,即元素为结构体的 arraylist

热度:9758   发布时间:2013-02-25 00:00:00.0
如何创建一个arraylist结构体数组,即元素为结构体的 arraylist
如题~~~很郁闷,数组不能达到我的要求。因为我要动态删除和插入,还有点疑问如果我用结构体作为 arraylist 的元素以后页面控件的绑定是否还是和普通数组一样处理?

------解决方案--------------------------------------------------------
C# code
        protected void Page_Load(object sender, EventArgs e)        {            if (!Page.IsPostBack)            {                List<StructTest> list = new List<StructTest>();                list.Add(new StructTest(1, false, DateTime.Now, "Hello"));                this.GridView1.DataSource = list;                this.GridView1.DataBind();            }         }        struct StructTest        {            int a;            public int A            {                get { return a; }                set { a = value; }            }            bool b;            public bool B            {                get { return b; }                set { b = value; }            }            DateTime c;            public DateTime C            {                get { return c; }                set { c = value; }            }            string d;            public string D            {                get { return d; }                set { d = value; }            }            public StructTest(int a, bool b, DateTime c, string d)            {                this.a = a;                this.b = b;                this.c = c;                this.d = d;            }        }
------解决方案--------------------------------------------------------
C# code
ArrayList al = new ArrayList();al.Add(1); // 将1加入数组al.Add(3); // 将3加入数字al.Insert(1, 2); // 在1和3直接插入一个元素al.Remove(3); // 删除数组中的第一个3al.Sort(); // 给数组排序foreach (object o in al) {     // 遍历整个数组}
------解决方案--------------------------------------------------------
还有点疑问如果我用结构体作为 arraylist 的元素以后页面控件的绑定是否还是和普通数组一样处理?
=================
一样处理

C# code
using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;public partial class Default11 : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {        ArrayList al = new ArrayList();        for (int i = 0; i < 5; i++)        {            TestUser u = new TestUser();            u.Name = "test"+i.ToString();            u.ID = i;            al.Add(u);        }        this.GridView1.DataSource = al;        GridView1.DataBind();    }    }struct TestUser{    private string _name;    private int _id;    public string Name    {        get        {            return _name;        }        set        {            _name = value;        }    }    public int ID    {        get        {            return _id;        }        set        {            _id = value;        }    }}
  相关解决方案