Just store your datatable is Session variable and add new row to datatable and give it as datasource to your gridview.
DataTable dt = null;
try
{
if (Session["dtItems"] != null)
{
dt = (DataTable)Session["dtItems"];
}
else
{
dt = new DataTable();
dt.Columns.Add("Quantity");
dt.Columns.Add("Rate_Unit");
dt.Columns.Add("Amount");
}
DataRow dataRow;
dataRow = dt.NewRow();
dataRow["Quantity"] = TextBox1.Text;
dataRow["Rate_Unit"] = TextBox2.Text;
dataRow["Amount"] = TextBox3.Text;
dt.Rows.Add(dataRow);
dt.AcceptChanges();
Session["dtItems"] = dt;
GridView1.DataSource = dt.DefaultView;
GridView1.DataBind();
}
catch (Exception ex)
{
}