次のリンクのソリューションを使用して列を非表示にします
GridViewでTemplateField列を非表示にする方法
ただし、gridviewは非表示の行がnull値であるため、更新操作で問題が発生します。では、データバインド後に列を非表示にする方法は?
protected void begv_OrderDetail_RowCreated(object sender, GridViewRowEventArgs e)
{
((DataControlField)begv_OrderDetail.Columns.Cast<DataControlField>().Where(fld => fld.HeaderText == "FileNo").SingleOrDefault()).Visible = "False";
}