Не добавляйте столбец командного поля, а добавляйте поле шаблона. в этом поле шаблона добавьте шаблон элемента, ImageButton и оставьте свойство enabled ImageButton равным true для строк, которые добавляются из исходной сетки, и false для других. (Это можно проверить, сохранив метку в gridview, которая должна быть скрыта, и установите ее текст в «true» для строк, полученных из исходной сетки)
ПРИМЕР:
<asp:TemplateField HeaderText="Delete">
<ItemTemplate>
<asp:ImageButton ID="imgbtnDelete" ToolTip="Delete" runat="server" CommandArgument='<%# DataBinder.Eval(Container.DataItem,"SomeField") %>' CommandName="Delete" />
</ItemTemplate>
</asp:TemplateField>
в CodeBehind
protected void Grid_RowDataBound(object sender, GridViewRowEventArgs e)
{
Label lbl = (Label)e.Row.FindControl("lbl");
ImageButton imgbtnDeleteUser = (ImageButton)e.Row.FindControl("imgbtnDelete");
if (imgbtnDeleteUser != null && lbl.Text==true)
{
imgbtnDeleteUser.Enabled = true;
}
else
{
imgbtnDeleteUser.Enabled = false;
}
}