我创建了两个TextBox,用于在Visual Studio 2010上使用C#在基于Web的ASP.NET应用程序中输入员工的FirstName和LastName。有一个Button。当我单击它时,我在TextBox中输入的值应该显示在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();
}
**
答案 0 :(得分:3)
我建议使用类型列表List<T>
而不是ArrayList
,这样可以避免代码中的大量类型转换。您可以阅读有关使用类型列表here的优点的更多信息。制作一类让我们说Employee与数据成员FirstName,LastName等和雇员列表的make,并与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();
答案 1 :(得分:0)
您可以阅读本文,了解如何将datagrid绑定到arraylist。
http://www.akadia.com/services/dotnet_arraylist_datagrid.html