1

我在 Visual Studio 2010 上使用 C# 创建了两个文本框,用于在基于 Web 的 ASP.NET 应用程序中输入员工的名字和姓氏。有一个按钮。当我单击它时,我在 TextBoxes 中输入的值应该显示在 Gridview 中,而这些值不会存储在数据库中。我已经使用 DataTables 实现了它,如下所示。但现在我想使用 ArrayList 来实现它。我怎样才能做到这一点?您能否提供一个示例代码来执行上述功能?

如何调整下面给出的代码,以使用 ArrayList 而不是 DataTables 来实现功能?

**

protected void Page_Load(object sender, EventArgs e)
{
        DataTable dt = new DataTable();
        DataColumn dc1 = new DataColumn("FIRST NAME");
        DataColumn dc2 = new DataColumn("LAST NAME");
        dt.Columns.Add(dc1);
        dt.Columns.Add(dc2);
        DataRow dr1 = dt.NewRow();
        GridView1.DataSource = dt;
        GridView1.DataBind();
}
protected void Button1_Click(object sender, EventArgs e)
{
    DataRow dr1 = dt.NewRow();
    dr1[0] = TextBox1.Text;
    dr1[1] = TextBox2.Text;
    dt.Rows.Add(dr1); 
    GridView1.DataSource = dt;
    GridView1.DataBind();
}

**

4

2 回答 2

3

我会建议使用类型化列表List<T>,而不是使用ArrayList它来避免代码中的大量类型转换。您可以在此处阅读有关使用类型列表的优势的更多信息。创建一个类,让我们说 Employee 与数据成员 FirstName,LastName 等,并制作员工列表并将其绑定到GridView.

public class Employee
{
    public FirstName {get; set;}
    public LastName {get; set;}
    public Address {get; set;}
}

List<Employee> employees = List<Employee>();
employees.Add(new Employee{FirstName: "john", LastName: "Thunder", Address: "addr"});
gridView1.DataSource = employees;
gridView1.DataBind();
于 2013-02-18T07:30:58.360 回答
0

您可以通过本文了解如何将 datagrid 绑定到 arraylist。

http://www.akadia.com/services/dotnet_arraylist_datagrid.html

于 2013-02-18T07:35:59.187 回答