Para quem precisar... consegui resolver desta maneira...
adicione o DataKeyNames no Grid view e o evento OnRowDeleting
<asp:GridView ID="grdDocSelecionado" runat="server" AutoGenerateColumns="False" Width="100%" vPageSize="20" OnRowDeleting="OnRowDeleting" DataKeyNames="DOC_ID" ToolTip="Selecione os documentos recebidos">
Depois no evento OnRowDeleting utilizei o código a seguir:
protected void OnRowDeleting(object sender, GridViewDeleteEventArgs e)
{
// crio um datatable utilizando a Session do 2° Grid
DataTable tbl = (DataTable)Session["dtSession"];
//depois removo a linha desejada pelo index dela
tbl.Rows.RemoveAt(e.RowIndex);
// Salvo esta nova Sessão no novo datatable
Session["dtSession"] = tbl;
// utilizo a session como datasource
grdDocSelecionado.DataSource = (DataTable)Session["dtSession"];
// depois mando o bind
grdDocSelecionado.DataBind();
}
no Page_load eu crio a Session utillizando o ViewState
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
numDTL = txtNum_DTLEC.Text;
numDoc = txtNumDoc.Text;
this.atualizaGrid(numDTL, numDoc);
dt = new DataTable();
CreateDataTable();
}
else
{
dt = (DataTable)ViewState["DataTable"];
//criação da Session utilizando o ViewState
Session["dtSession"] = ViewState["DataTable"];
}
ViewState["DataTable"] = dt;
}
eu utilizei um botão delete que já tem no Grid, achei mais fácil doq criar manualmente.
qlq dúvida estou a disposição.
Abraço
Marcos Paulo - Analista de Sistemas