Solution to Question 1:
protected void gvCallHistory_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
string strNotes = DataBinder.Eval(e.Row.DataItem, "Note").ToString();
string strDescription = strNotes.Substring(0, 10);
if (strDescription == "Email Sent") ((Button)e.Row.FindControl("btnViewEmail")).Visible = true;
else ((Button)e.Row.FindControl("btnViewEmail")).Visible = false;
}
}