не забывайте, что массив данных где-то не хранится, вы должны хранить его в сеансе пользователя и при каждой обратной передаче, вызванной кнопкой, извлекать его из сеанса и добавлять элемент, выбранный пользователем.
Редактировать: Вот небольшой пример того, как вы должны хранить ArrayList в сеансе и получать его при каждой обратной передаче.
public partial class _Default : System.Web.UI.Page
{
ArrayList array;
protected void Page_Load(object sender, EventArgs e)
{
if(Session["array"] == null)
{
array = new ArrayList();
Session.Add("array", array);
}
else
array = Session["array"] as ArrayList;
GridView1.DataSource = array;
GridView1.DataBind(); //Edit 2
}
protected void Button1_Click(object sender, EventArgs e)
{
array.Add(DateTime.Now);
}
}
если у вас остались вопросы, дайте мне знать.