Нелогично использовать ArrayList, когда данные для привязки находятся в табличной структуре. ArrayList используется в тот момент, когда необходимо связать данные с помощью элементов управления Dropdown или ListView.
Если вы хотите связать данные с элементами управления gridview / datalist / DataList, то лучше использовать DataTable / Dataset или LIST ex: LIST.
Здесь у меня есть один пример для Datatable с gridview.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.IO;
using System.Data.OleDb;
using System.Collections;
namespace TestApp
{
public partial class MyWebPage: System.Web.UI.Page
{
static string GetConnectionString()
{
return ConfigurationManager.ConnectionStrings["myConnString"].ConnectionString;
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
private void BindData()
{
string connstring = GetConnectionString();
using(SqlConnection cn = new SqlConnection())
{
string query = "your sql query";
SqlDataAdapter da = new SqlDataAdapter(query,cn);
cn.Open();
DataTable dtMyTable = new DataTable();
da.Fill(dtMyTable);
GridView1.DataSource = dtMyTable;
GridView1.DataBind();
}
}
}
}