none
Dúvida CheckBox RRS feed

  • Pergunta

  • Bom dia galera,

    já andei olhando alguns posts aki no grupo, mas nada me ajudou.

    minha dúvida é simples, tenho um Grid com um TemplateField para o campo checkbox "ChkDocs", coloquei também um HeaderTemplate com um checkbox "ChkAll" para realizar a função de selecionar todas as linhas do Grid. O que eu preciso é o seguinte:

    • clicar no CheckAll para selecionar todos os registros, clicar novamente desmarca todos: OK

    o que tá pegando é o segunite, eu quero que o checkbox "CheckAll " quando estiver selecionado e eu tirar a seleção de uma das linhas do Grid, o "CheckAll " tem que perder a seleção, ficar desmarcado deixando apenas as linhas não desmarcadas pelo usuário.

    segue o código que estou utilizando:

    <%@ Page Title="" Language="C#" MasterPageFile="~/fup_servicos/fup_servicos.master"
        AutoEventWireup="true" CodeBehind="incluir_dtlec.aspx.cs" Inherits="SisGem.WEB.fup_servicos.recebimento_doc.incluir_dtlec" %>
    
    <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
    <asp:Content ID="SisGemScripts" ContentPlaceHolderID="head" runat="server">
        <script src="../../scripts/Funcoes.js" type="text/javascript"></script>
        <script type="text/javascript" language="javascript">
        </script>
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
        <!-- inicio #formulario -->
        <asp:UpdatePanel runat="server" ID="upFiltro" UpdateMode="Conditional">
            <ContentTemplate>
                <asp:Panel ID="pnlFiltro" runat="server" Visible="true">
                    <div class="TituloPagina">
                        <asp:Label ID="lblTitulo" runat="server" Text="Enviar e-DTL-EC"></asp:Label>
                    </div>
                    <div id="FiltroBusca">
                        <table id="tbFiltroBusca" border="1" width="100%">
                            <tr>
                                <td>
                                    <asp:LinkButton runat="server" ID="lnkfake"></asp:LinkButton>
                                </td>
                            </tr>
                            <tr>
                                <td width="100%">
                                    <table id="Table2" border="1" width="100%" align="center">
                                        <tr>
                                            <td align="left">
                                                <table width="100%" cellpadding="1" cellspacing="1" style="height: 17px">
                                                    <table border="0">
                                                        <tr>
                                                            <td class="style7">
                                                                <asp:Label ID="lblNum_DTLEC" runat="server" CssClass="campos">N° DTL-EC:</asp:Label>
                                                            </td>
                                                            <td>
                                                                <asp:TextBox ID="txtNum_DTLEC" runat="server" CssClass="CaixaTexto" MaxLength="8"
                                                                    ValidationGroup="MKE" Width="92px"></asp:TextBox>
                                                            </td>
                                                            <td class="style10">
                                                                <asp:Label ID="lblNumDoc" runat="server" CssClass="campos">N° Documento:</asp:Label>
                                                            </td>
                                                            <td>
                                                                <asp:TextBox ID="txtNumDoc" runat="server" CssClass="CaixaTexto" MaxLength="8" ValidationGroup="MKE"
                                                                    Width="92px"></asp:TextBox>
                                                            </td>
                                                            <td class="style3">
                                                                <asp:Label ID="lblDTLEC_DATA_ENVIO" runat="server" CssClass="campos">Data de envio:</asp:Label>
                                                            </td>
                                                            <td class="style2">
                                                                <asp:TextBox ID="txtSOLIC_DATA_INCLUSAO" runat="server" CssClass="CaixaTexto" MaxLength="8"
                                                                    Style="text-align: justify" ValidationGroup="MKE" Width="70px"></asp:TextBox>
                                                                <td class="style8">
                                                                    <asp:ImageButton ID="imgCal" runat="server" CausesValidation="False" ImageUrl="~/images/Calendar_scheduleHS.png" />
                                                                </td>
                                                                <asp:MaskedEditExtender ID="mskexDeliv" runat="server" AcceptNegative="Left" DisplayMoney="Left"
                                                                    ErrorTooltipEnabled="True" Mask="99/99/9999" MaskType="Date" MessageValidatorTip="true"
                                                                    OnFocusCssClass="MaskedEditFocus" OnInvalidCssClass="MaskedEditError" TargetControlID="txtSOLIC_DATA_INCLUSAO">
                                                                </asp:MaskedEditExtender>
                                                                <asp:MaskedEditValidator ID="mevDeliv" runat="server" ControlExtender="mskexDeliv"
                                                                    ControlToValidate="txtSOLIC_DATA_INCLUSAO" Display="Dynamic" EmptyValueBlurredText="*"
                                                                    InvalidValueBlurredMessage="*" InvalidValueMessage="Data inválida" Style="color: Red;
                                                                    display: none;" ValidationGroup="MKE"></asp:MaskedEditValidator>
                                                                <asp:CalendarExtender ID="calendarDELIV" runat="server" PopupButtonID="imgCal" TargetControlID="txtSOLIC_DATA_INCLUSAO">
                                                                </asp:CalendarExtender>
                                                            </td>
                                                            <td class="style6">
                                                                <asp:Label ID="lblDATA_RECEBIMENTO" runat="server" CssClass="campos">Data de recebimento:</asp:Label>
                                                            </td>
                                                            <td>
                                                                <asp:TextBox ID="txtSOLIC_DATA_CONCLUSAO" runat="server" CssClass="CaixaTexto" MaxLength="8"
                                                                    Style="text-align: justify" ValidationGroup="MKE2" Width="70px"></asp:TextBox>
                                                                <td class="style9">
                                                                    <asp:ImageButton ID="imgCal2" runat="server" CausesValidation="False" ImageUrl="~/images/Calendar_scheduleHS.png" />
                                                                </td>
                                                                <asp:MaskedEditExtender ID="mskexDeliv2" runat="server" AcceptNegative="Left" DisplayMoney="Left"
                                                                    ErrorTooltipEnabled="True" Mask="99/99/9999" MaskType="Date" MessageValidatorTip="true"
                                                                    OnFocusCssClass="MaskedEditFocus" OnInvalidCssClass="MaskedEditError" TargetControlID="txtSOLIC_DATA_CONCLUSAO">
                                                                </asp:MaskedEditExtender>
                                                                <asp:MaskedEditValidator ID="mevDeliv2" runat="server" ControlExtender="mskexDeliv2"
                                                                    ControlToValidate="txtSOLIC_DATA_CONCLUSAO" Display="Dynamic" EmptyValueBlurredText="*"
                                                                    InvalidValueBlurredMessage="*" InvalidValueMessage="Data inválida" Style="color: Red;
                                                                    display: none;" ValidationGroup="MKE2"></asp:MaskedEditValidator>
                                                                <asp:CalendarExtender ID="calendarDELIV2" runat="server" PopupButtonID="imgCal2"
                                                                    TargetControlID="txtSOLIC_DATA_CONCLUSAO">
                                                                </asp:CalendarExtender>
                                                            </td>
                                                        </tr>
                                                    </table>
                                            </td>
                                            <tr>
                                                <td align="left" valign="middle" rowspan="2">
                                                    <asp:Button CssClass="Botao" ID="btnPesq" runat="server" TabIndex="2" Text="Pesquisar"
                                                        OnClick="btnPesq_Click"></asp:Button>
                                                    &nbsp;&nbsp;
                                                    <asp:Button CssClass="Botao" ID="btnLimpar" runat="server" TabIndex="2" Text="Limpar"
                                                        OnClick="btnLimpar_Click" ToolTip="Limpar campos de filtro"></asp:Button>
                                                </td>
                                            </tr>
                                        </tr>
                                    </table>
                            </tr>
                        </table>
                        </td> </tr>
                        <tr>
                            <td>
                                <!-- inicio #Panel Grid de Consulta -->
                                <table width="100%" align="center" id="Table1">
                                    <tr>
                                        <td>
                                            <table id="Table3" width="100%" border="1" align="center" bgcolor="whitesmoke">
                                                <tr>
                                                    <asp:GridView ID="grdBuscaDoc" runat="server" AutoGenerateColumns="False" Width="100%"
                                                        PageSize="20" DataKeyNames="DOC_ID" ToolTip="Selecione os documentos recebidos">
                                                        <Columns>
                                                            <asp:TemplateField>
                                                                <HeaderTemplate>
                                                                    Documentos Recebidos
                                                                    <br />
                                                                    <asp:CheckBox ID="chkAll" runat="server" onclick="checkAll(this);" AutoPostBack="true" />
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:CheckBox ID="chkDocs" runat="server" OnCheckedChanged="chkDocOnCheckedChanged"
                                                                        AutoPostBack="true" />
                                                                </ItemTemplate>
                                                                <ItemStyle HorizontalAlign="Center" />
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    ID
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblDOC" runat="server" Text='<%#Eval("DOC_ID")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    TD
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblTD" runat="server" Text='<%#Eval("TD")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Assunto
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblAssunto" runat="server" Text='<%#Eval("BC")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" Width="80px" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Estrutura
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblFuncao" runat="server" Text='<%#Eval("OS1_FUNCT")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    DTL
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblNumDTL" runat="server" Text='<%#Eval("NUM_DTL")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Descrição
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblDescricao" runat="server" Text='<%#Eval("DESIGNATION")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Número Documento
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblDatReceb" runat="server" Text='<%#Eval("DOCUMENT_NO")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Revisão
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblLoginReceb" runat="server" Text='<%#Eval("REVISAO")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField Visible="false">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Data Revisão
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblDocStatus" runat="server" Text='<%#Eval("REV_DATE")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField>
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Quantidade Documentos
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblStatusDTLEC" runat="server" Text='<%#Eval("QUANT_DOC")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                        </Columns>
                                                        <AlternatingRowStyle BackColor="whitesmoke" />
                                                        <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
                                                        <HeaderStyle BackColor="#003F86" Font-Bold="True" ForeColor="White" />
                                                        <PagerStyle BackColor="#003F86" ForeColor="White" HorizontalAlign="Center" />
                                                        <RowStyle BackColor="White" ForeColor="Black" />
                                                        <SortedAscendingCellStyle BackColor="#F1F1F1" />
                                                        <SortedAscendingHeaderStyle BackColor="#0000A9" />
                                                        <SortedDescendingCellStyle BackColor="#CAC9C9" />
                                                        <SortedDescendingHeaderStyle BackColor="#000065" />
                                                        <EmptyDataTemplate>
                                                            Não existe elemento para associar ao grupo.
                                                        </EmptyDataTemplate>
                                                        <SortedAscendingCellStyle BackColor="#F1F1F1" />
                                                        <SortedAscendingHeaderStyle BackColor="#0000A9" />
                                                        <SortedDescendingCellStyle BackColor="#CAC9C9" />
                                                        <SortedDescendingHeaderStyle BackColor="#000065" />
                                                    </asp:GridView>
                                                </tr>
                                            </table>
                                        </td>
                                    </tr>
                                </table>
                        <tr>
                            <td style="padding: 10px 10px 10px 10px;" bgcolor="#248CC0">
                                <asp:Button ID="btnPesqIncluir" runat="server" CssClass="Botao" Text="Gerar eDTL-EC - CEC"
                                    OnClick="btnPesqIncluir_Click" Width="136px" />
                            </td>
                        </tr>
                        </table>
                        <tr>
                            <td>
                            </td>
                        </tr>
     
                            </td>
                        </tr>
                    </div>
                </asp:Panel>
                <!-- fim #formulario -->
            </ContentTemplate>
        </asp:UpdatePanel>
    </asp:Content>
    


    Marcos Paulo - Analista de Sistemas

    quarta-feira, 11 de setembro de 2013 14:34

Respostas

  • Fala Marcos. 

    Cara controla isso em jquery. Muito mais interativo. 

    http://www.mxstudio.com.br/desenvolvimento/dreamweaver/asp-net-e-jquery-gridview-com-checkbox-marcando-e-desmarcando-tudo/

    Esse link está completo. 

    Espero que ajude. 

    Abraço.

    quarta-feira, 11 de setembro de 2013 16:50
  • Marcos, como falei anteriormente falta o FindControl nesse carinha aqui:

     if (((CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs")).Checked == true)
                    {
                        DataRow dr = dt.NewRow();
    
                        dr["DOC_ID"] = ((Label)grdBuscaDoc.Rows[i].Cells[1].FindControl("")).Text.Trim();
                        dr["TD"] = grdBuscaDoc.Rows[i].Cells[2].Text.Trim();
                        dr["BC"] = grdBuscaDoc.Rows[i].Cells[3].Text.Trim();
                        dr["OS1_FUNCT"] = grdBuscaDoc.Rows[i].Cells[4].Text.Trim();
                        dr["NUM_DTL"] = grdBuscaDoc.Rows[i].Cells[5].Text.Trim();
                        dr["DESIGNATION"] = grdBuscaDoc.Rows[i].Cells[6].Text.Trim();
                        dr["DOCUMENT_NO"] = grdBuscaDoc.Rows[i].Cells[7].Text.Trim();
                        dr["REVISAO"] = grdBuscaDoc.Rows[i].Cells[8].Text.Trim();
                        dr["REV_DATE"] = grdBuscaDoc.Rows[i].Cells[9].Text.Trim();
                        dr["QUANT_DOC"] = grdBuscaDoc.Rows[i].Cells[10].Text.Trim();
                        
                        dt.Rows.Add(dr);
                    }

    Eu inclui no primeiro item. 

    Pra você ter a ideia do esquema. 

    Se você debugar vai ver que ele estes itens da linha selecionada vão estar sem valor algum. 

    Vai na fé malandro que agora vai funfa. hehehehe.. 

    Abraço.

    • Marcado como Resposta Marcos Paulo P.M sexta-feira, 13 de setembro de 2013 10:40
    quinta-feira, 12 de setembro de 2013 19:20

Todas as Respostas

  • Amigo,

    Acredito que a solução seja você colocar uma verificação dentro do método "chkDocOnCheckedChange" onde ele verifica se o CHECKALL está marcado, caso esse cara esteja e o valor recebido pelo método do checkbox seja FALSE ele desmarca o CHECKALL.

    Se o CHECKALL estiver funcionando você já resolveu 99% do problema.

    Espero ter ajudado e boa sorte!


    Não esqueça de marcar como útil uma resposta que te ajude.
    "A diversão é a alma do negócio"

    quarta-feira, 11 de setembro de 2013 16:22
  • Fala Marcos. 

    Cara controla isso em jquery. Muito mais interativo. 

    http://www.mxstudio.com.br/desenvolvimento/dreamweaver/asp-net-e-jquery-gridview-com-checkbox-marcando-e-desmarcando-tudo/

    Esse link está completo. 

    Espero que ajude. 

    Abraço.

    quarta-feira, 11 de setembro de 2013 16:50
  • Fala Marcos. 

    Cara controla isso em jquery. Muito mais interativo. 

    http://www.mxstudio.com.br/desenvolvimento/dreamweaver/asp-net-e-jquery-gridview-com-checkbox-marcando-e-desmarcando-tudo/

    Esse link está completo. 

    Espero que ajude. 

    Abraço.

    ok Fernando, agora esta parte esta funcionando legal, oq pega agora é o seguinte, quando clico no botão gerar Grid, o novo grid não esta sendo gerado. vou postar o código aqui da função que faz isso, e vc se consegue entender oq ta errado por favor.

    Desde já agradeço a sua ajuda.

    protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    numDTL = txtNum_DTLEC.Text;
                    numDoc = txtNumDoc.Text;
    
                    var bll_listdocs = new BLLDtl();
                    var listdocs = bll_listdocs.ListarDocsIsoSup(numDTL, numDoc);
                    grdBuscaDoc.Visible = true;
                    grdBuscaDoc.DataSource = listdocs;
                    grdBuscaDoc.DataBind();
                }
            }
    
    private void GetData()
            {
                DataTable dt;
                if (ViewState["SelectedRecords"] != null)
                    dt = (DataTable)ViewState["SelectedRecords"];
                else
                    dt = CreateDataTable();
                CheckBox checkAll = (CheckBox)grdBuscaDoc.HeaderRow.Cells[0].FindControl("chkAll");
                for (int i = 0; i < grdBuscaDoc.Rows.Count; i++)
                {
                    if (checkAll.Checked)
                    {
                        dt = AddRow(grdBuscaDoc.Rows[i], dt);
                    }
                    else
                    {
                        CheckBox chkDocs = (CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs");
                        if (chkDocs.Checked)
                        {
                            dt = AddRow(grdBuscaDoc.Rows[i], dt);
                        }
                        else
                        {
                            dt = RemoveRow(grdBuscaDoc.Rows[i], dt);
                        }
                    }
                }
                ViewState["SelectedRecords"] = dt;
            }
    
            private DataTable CreateDataTable()
            {
                DataTable dt = new DataTable();
                dt.Columns.Add("DOC_ID");
                dt.Columns.Add("TD");
                dt.Columns.Add("BC");
                dt.Columns.Add("OS1_FUNCT");
                dt.Columns.Add("NUM_DTL");
                dt.Columns.Add("DESIGNATION");
                dt.Columns.Add("DOCUMENT_NO");
                dt.Columns.Add("REVISAO");
                dt.Columns.Add("REV_DATE");
                dt.Columns.Add("QUANT_DOC");
                dt.AcceptChanges();
                return dt;
            }
    
            private void SetData()
            {
                CheckBox checkAll = (CheckBox)grdBuscaDoc.HeaderRow.Cells[0].FindControl("chkAll");
                checkAll.Checked = true;
                if (ViewState["SelectedRecords"] != null)
                {
                    DataTable dt = (DataTable)ViewState["SelectedRecords"];
                    for (int i = 0; i < grdBuscaDoc.Rows.Count; i++)
                    {
                        CheckBox chkDocs = (CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs");
                        if (chkDocs != null)
                        {
                            DataRow[] dr = dt.Select("DOC_ID = '" + grdBuscaDoc.Rows[i].Cells[1].Text + "'");
                            chkDocs.Checked = dr.Length > 0;
                            if (!chkDocs.Checked)
                            {
                                checkAll.Checked = false;
                            }
                        }
                    }
                }
            }
    
            private DataTable AddRow(GridViewRow gvRow, DataTable dt)
            {
                DataRow[] dr = dt.Select("DOC_ID = '" + gvRow.Cells[1].Text + "'");
                if (dr.Length <= 0)
                {
                    dt.Rows.Add();
                    dt.Rows[dt.Rows.Count - 1]["DOC_ID"] = gvRow.Cells[1].Text;
                    dt.Rows[dt.Rows.Count - 1]["TD"] = gvRow.Cells[2].Text;
                    dt.Rows[dt.Rows.Count - 1]["BC"] = gvRow.Cells[3].Text;
                    dt.Rows[dt.Rows.Count - 1]["OS1_FUNCT"] = gvRow.Cells[4].Text;
                    dt.Rows[dt.Rows.Count - 1]["NUM_DTL"] = gvRow.Cells[5].Text;
                    dt.Rows[dt.Rows.Count - 1]["DESIGNATION"] = gvRow.Cells[6].Text;
                    dt.Rows[dt.Rows.Count - 1]["DOCUMENT_NO"] = gvRow.Cells[7].Text;
                    dt.Rows[dt.Rows.Count - 1]["REVISAO"] = gvRow.Cells[8].Text;
                    dt.Rows[dt.Rows.Count - 1]["REV_DATE"] = gvRow.Cells[9].Text;
                    dt.Rows[dt.Rows.Count - 1]["QUANT_DOC"] = gvRow.Cells[10].Text;
                    dt.AcceptChanges();
                }
                return dt;
            }
    
            private DataTable RemoveRow(GridViewRow gvRow, DataTable dt)
            {
                DataRow[] dr = dt.Select("DOC_ID = '" + gvRow.Cells[1].Text + "'");
                if (dr.Length > 0)
                {
                    dt.Rows.Remove(dr[0]);
                    dt.AcceptChanges();
                }
                return dt;
            }
    
            private void BindSecondaryGrid()
            {
                DataTable dt = (DataTable)ViewState["SelectedRecords"];
                grdDocSelecionado.DataSource = dt;
                grdDocSelecionado.DataBind();
            }
    
            protected void OnPaging(object sender, GridViewPageEventArgs e)
            {
                GetData();
                grdBuscaDoc.PageIndex = e.NewPageIndex;
                atualizaGrid(numDTL, numDoc);
                SetData();
            }
     protected void chkAllOnCheckedChanged(object sender, EventArgs e)
            {
                 
            }
    protected void btnPesqIncluir_Click(object sender, EventArgs e)
            {
    
                GetData();
                SetData();
                BindSecondaryGrid();
    
            }

    Ve se consegue entender porque ele não carrega o Grid com as informações das linhas selecionadas. oq ta acontecendo é o seguinte, quando seleciono todas as linhas com o chkAll e clico pra gerar o novo grid, ele gera o grid com todas colunas, mas sem as linhas selecionadas no grid anterior, qnd seleciono algumas linhas aleatoriamente, ele não carrega o grid, e qnd seleciono a última linha  do grid, não sei pq ele carrega o grid como se tivesse selecionado o chkAll, gera o grid, mas sem dados.

    se precisar de mais alguma informação é só me falar

    Abraço...


    Marcos Paulo - Analista de Sistemas

    quarta-feira, 11 de setembro de 2013 17:33
  • Fala Marcos, então cara aparentemente não tem nada de errado, o correto era você ir debugando seu código desde a ação do botão verificando no watch e vendo como estão sendo adicionados os dados, se eles não estão sendo sobre escritos e por ai vai cara. 

    Vi uma coisa aqui que não sei se é necessário. 

    for (int i = 0; i < grdBuscaDoc.Rows.Count; i++)
    {
        if (checkAll.Checked)
        {
            dt = AddRow(grdBuscaDoc.Rows[i]);
        }
    }

    Eu apenas tirei o AddRow(grdBuscaDoc.Rows[i]. dt). 

    O resto creio que não tenha grilo não cara. 

    Mas faz isso debuga com calma que você vai encontrar onde está acontecendo. 

    Abraço.

    quarta-feira, 11 de setembro de 2013 18:03
  • Fala Marcos, então cara aparentemente não tem nada de errado, o correto era você ir debugando seu código desde a ação do botão verificando no watch e vendo como estão sendo adicionados os dados, se eles não estão sendo sobre escritos e por ai vai cara. 

    Vi uma coisa aqui que não sei se é necessário. 

    for (int i = 0; i < grdBuscaDoc.Rows.Count; i++)
    {
        if (checkAll.Checked)
        {
            dt = AddRow(grdBuscaDoc.Rows[i]);
        }
    }

    Eu apenas tirei o AddRow(grdBuscaDoc.Rows[i]. dt). 

    O resto creio que não tenha grilo não cara. 

    Mas faz isso debuga com calma que você vai encontrar onde está acontecendo. 

    Abraço.

    retirar o , dt  da linha de comando não funciona, pois o método espera 1 argumento, no caso o dt. já tentei debugar, e ele não consegue montar o segundo datatable, sempre retorna os dados vazios, mesmo selecionando uma linha só... Não encontrei nenhum outro artigo sobre este assunto para tentar utilizar outro método. Nem sei mais oq fazer cara... se esse jeito não funcionar nem sei mais onde pesquisar...

    Marcos Paulo - Analista de Sistemas

    quarta-feira, 11 de setembro de 2013 18:22
  • Mas ele da algum erro?

    O método é o setData() correto? 

    Tente adicionar as linhas assim:

    DataTable mDataTable = new DataTable();
    
    mDataTable.Columns.Add("DOC_ID");
    mDataTable.Columns.Add("DADOS");
    
    DataRow linha;
    
    for (int i = 0; i < 10; i++)
    {
        linha = mDataTable.NewRow();
    
        //gera o n£mero GUID
        linha["DOC_ID"] = i.ToString();
        linha["DADOS"] = "Teste Fernando Carregamento Grid:" + i.ToString();
    
        mDataTable.Rows.Add(linha);
    }

    Pode ser que ele está se perdendo em algum ponto na hora de adicionar a linha. 

    Abraço.


    quarta-feira, 11 de setembro de 2013 18:39
  • Mas ele da algum erro?

    O método é o setData() correto? 

    Tente adicionar as linhas assim:

    DataTable mDataTable = new DataTable();
    
    mDataTable.Columns.Add("DOC_ID");
    mDataTable.Columns.Add("DADOS");
    
    DataRow linha;
    
    for (int i = 0; i < 10; i++)
    {
        linha = mDataTable.NewRow();
    
        //gera o n£mero GUID
        linha["DOC_ID"] = i.ToString();
        linha["DADOS"] = "Teste Fernando Carregamento Grid:" + i.ToString();
    
        mDataTable.Rows.Add(linha);
    }

    Pode ser que ele está se perdendo em algum ponto na hora de adicionar a linha. 

    Abraço.


    então, o erro está no SetData também, pois quando aciono este método, não sei porque, quando seleciono só a última linha do grid, ele seleciona todas as linhas anteriores. Coloquei o BreakPoint para acompanhar, e ele não consegue trazer os dados na hora de montar o datatable. neste método monta AddRow, todas as llinhas retornam texto em branco, eu não posso montar o grid da maneira q vc ta passando pois preciso buscar no banco os dados do meu grid, não saõ dados fixos, são dados renovados da todo instante. 

    Marcos Paulo - Analista de Sistemas

    quarta-feira, 11 de setembro de 2013 18:53
  • Cara tenta fazer seu if do check box assim:

    if (((CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs")).Checked == true)
    {
             DataRow[] dr = dt.Select("DOC_ID = '" +        grdBuscaDoc.Rows[i].Cells[1].Text + "'");
             chkDocs.Checked = dr.Length > 0;
       
    }
    Verifique sempre se ele etá selecionado, acho que é mais correto que você validar se está null.
    quarta-feira, 11 de setembro de 2013 19:37
  • Cara tenta fazer seu if do check box assim:

    if (((CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs")).Checked == true)
    {
             DataRow[] dr = dt.Select("DOC_ID = '" +        grdBuscaDoc.Rows[i].Cells[1].Text + "'");
             chkDocs.Checked = dr.Length > 0;
       
    }
    Verifique sempre se ele etá selecionado, acho que é mais correto que você validar se está null.

    Fiz dessa maneira Fernando, resolveu a questão de marcar todos os anteriores, mas continua montando o Grid vazio, eu tirei o AccessKey='<%# Container.DataItemIndex %>' do primeiro Grid, pois não consegui resolver de maneira nenhuma aquela questão do AccesKey Too Long, infelizmente não posso montar o grid daquele jeito que vc flw porque os dados são variados, vão ter dados novos praticamente todo dia.só ta faltando essa questão de carregar os dados selecionados mesmo... fico no aguardo de mais alguma dica... abraço


    Marcos Paulo - Analista de Sistemas


    quinta-feira, 12 de setembro de 2013 11:15
  • Marcos, eu fiz os testes no código que você me passou pelo email, deixei apenas a grid, fiz um DataTable de testes e funcionou file. 

    Eu no seu caso faria o básico Marcos. 

    Um bind(), seleção de dados recupera o selecionado, adiciona em um DataTable novo (sempre) e utiliza esse DataTable para trabalhar. 

    Quando você tenta adicionar em um DataTable já existente você pode perder dados por algum motivo "bobo" sem perceber. 

    Tente também Marcos executar sua aplicação de forma "picada", parte a parte, assim você pode encontrar o erro mais facilmente. 

    Abraço, Good Luck.

    quinta-feira, 12 de setembro de 2013 11:54
  • Marcos, eu fiz os testes no código que você me passou pelo email, deixei apenas a grid, fiz um DataTable de testes e funcionou file. 

    Eu no seu caso faria o básico Marcos. 

    Um bind(), seleção de dados recupera o selecionado, adiciona em um DataTable novo (sempre) e utiliza esse DataTable para trabalhar. 

    Quando você tenta adicionar em um DataTable já existente você pode perder dados por algum motivo "bobo" sem perceber. 

    Tente também Marcos executar sua aplicação de forma "picada", parte a parte, assim você pode encontrar o erro mais facilmente. 

    Abraço, Good Luck.

    teria como vc me passar algum exemplo de como recuperar este selecionado e jogar em um novo DataTable?? 

    Marcos Paulo - Analista de Sistemas

    quinta-feira, 12 de setembro de 2013 12:23
  • Fala Marcos, cara eu só vi agora. 

    Você está recuperando o valor das colunas errado cara. Como são ItemTemplates você deve utilizando o FindControl para todas as Labels. 

    Segue o código. 

     protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    this.GeraGrid(this.CriarDataTable());
                }
            }
            protected void chkTeste_CheckedChanged(object sender, EventArgs e)
            {
    
                this.GeraGrid(this.CriarDataTable());
            }
    
            private DataTable CriarDataTable()
            {
                DataTable mDataTable = new DataTable();
    
                //mDataTable.Columns.Add("DOC_ID");
                //mDataTable.Columns.Add("DADOS");
                ////criando as colunas
                mDataTable.Columns.Add(new DataColumn("DOC_ID"));
                mDataTable.Columns.Add(new DataColumn("DADOS"));
    
    
                DataRow linha;
    
    
                for (int i = 0; i < 10; i++)
                {
                    linha = mDataTable.NewRow();
                    //gera o n£mero GUID
                    linha["DOC_ID"] = i.ToString();
                    linha["DADOS"] = "Teste Fernando Carregamento Grid:" + i.ToString();
    
                    mDataTable.Rows.Add(linha);
                }
    
                return mDataTable;
            }
    
            private void GeraGrid(DataTable mDataTable)
            {
                grdDocSelecionado.DataSource = mDataTable;
                grdDocSelecionado.DataBind();
            }
    
            protected void btnCopiar_Click(object sender, EventArgs e)
            {
    
                DataTable dt = this.AdicionaColunasDataTable();
                DataRow linha = null;
    
    
                foreach (GridViewRow item in grdDocSelecionado.Rows)
                {
                    if (((CheckBox)item.FindControl("chkChecado")).Checked == true)
                    {
                        linha = dt.NewRow();
    
                        linha["DADOS"] = ((Label)item.Cells[1].FindControl("lblDados")).Text.Trim();
                        linha["DOC_ID"] = ((Label)item.Cells[2].FindControl("lblItemIndex")).Text.Trim();
                        
                        dt.Rows.Add(linha);
                    }
                }
    
                divGrid2.Visible = true;
    
                grdGrid2.DataSource = dt;
                grdGrid2.DataBind();
    
            }
    
            private DataTable AdicionaColunasDataTable()
            {
                DataTable mDataTable = new DataTable();
    
                mDataTable.Columns.Add(new DataColumn("DOC_ID"));
                mDataTable.Columns.Add(new DataColumn("DADOS"));
    
                return mDataTable;
            }
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form runat="server">
            <div>
                <asp:GridView ID="grdDocSelecionado" runat="server" AutoGenerateColumns="False" Width="40%"
                    PageSize="20" DataKeyNames="DOC_ID" ToolTip="Selecione os documentos recebidos">
                    <Columns>
                        <asp:TemplateField ItemStyle-Width="5%">
                            <ItemTemplate>
                                <asp:CheckBox ID="chkChecado" runat="server" />
                            </ItemTemplate>
                            <ItemStyle HorizontalAlign="Center" />
                        </asp:TemplateField>
                        <asp:TemplateField Visible="false" ItemStyle-Width="15%" HeaderText="Código Item Listado">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
                            <ItemTemplate>
                                <asp:Label ID="lblDocId" runat="server" Text='<%#Eval("DOC_ID")%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField Visible="true" ItemStyle-Width="15%" HeaderText="Dados do Item">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
    
                            <ItemTemplate>
                                <asp:Label ID="lblDados" runat="server" Text='<%#Eval("DADOS")%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField Visible="true" ItemStyle-Width="15%" HeaderText="Data Item Index">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
    
                            <ItemTemplate>
                                <asp:Label ID="lblItemIndex" runat="server" Text='<%#Container.DataItemIndex%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
    
                    </Columns>
                </asp:GridView>
            </div>
            <div>
                <asp:Button ID="btnCopiar" runat="server" OnClick="btnCopiar_Click" Width="150px" Text="Copiar" />
            </div>
            <div visible="false" id="divGrid2" runat="server">
                <asp:GridView ID="grdGrid2" runat="server" AutoGenerateColumns="False" Width="40%"
                    PageSize="20" DataKeyNames="DOC_ID" ToolTip="Selecione os documentos recebidos">
                    <Columns>
                        <asp:TemplateField Visible="false" ItemStyle-Width="15%" HeaderText="Código Item Listado">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
                            <ItemTemplate>
                                <asp:Label ID="lblTeste1" runat="server" Text='<%#Eval("DOC_ID")%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField Visible="true" ItemStyle-Width="15%" HeaderText="Dados do Item">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
    
                            <ItemTemplate>
                                <asp:Label ID="lblTeste" runat="server" Text='<%#Eval("DADOS")%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                       
                    </Columns>
                </asp:GridView>
            </div>
        </form>
    </body>
    </html>
    

    Efetuei o click no botão copiar e os itens selecionados foram copiados para a lista de baixo Marcos. 

    Creio que o seu erro é o FindControl(""). Tente adicionar ele nessa linha

     DataRow[] dr = dt.Select("DOC_ID = '" + ((Label)grdBuscaDoc.Rows[i].Cells[1].FindControl("lblID")).Text.Trim() + "'");

    Espero que agora resolva o seu problema cara. 

    Abraço, Good Luck. 

    quinta-feira, 12 de setembro de 2013 17:27
  • Fala Marcos, cara eu só vi agora. 

    Você está recuperando o valor das colunas errado cara. Como são ItemTemplates você deve utilizando o FindControl para todas as Labels. 

    Segue o código. 

     protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    this.GeraGrid(this.CriarDataTable());
                }
            }
            protected void chkTeste_CheckedChanged(object sender, EventArgs e)
            {
    
                this.GeraGrid(this.CriarDataTable());
            }
    
            private DataTable CriarDataTable()
            {
                DataTable mDataTable = new DataTable();
    
                //mDataTable.Columns.Add("DOC_ID");
                //mDataTable.Columns.Add("DADOS");
                ////criando as colunas
                mDataTable.Columns.Add(new DataColumn("DOC_ID"));
                mDataTable.Columns.Add(new DataColumn("DADOS"));
    
    
                DataRow linha;
    
    
                for (int i = 0; i < 10; i++)
                {
                    linha = mDataTable.NewRow();
                    //gera o n£mero GUID
                    linha["DOC_ID"] = i.ToString();
                    linha["DADOS"] = "Teste Fernando Carregamento Grid:" + i.ToString();
    
                    mDataTable.Rows.Add(linha);
                }
    
                return mDataTable;
            }
    
            private void GeraGrid(DataTable mDataTable)
            {
                grdDocSelecionado.DataSource = mDataTable;
                grdDocSelecionado.DataBind();
            }
    
            protected void btnCopiar_Click(object sender, EventArgs e)
            {
    
                DataTable dt = this.AdicionaColunasDataTable();
                DataRow linha = null;
    
    
                foreach (GridViewRow item in grdDocSelecionado.Rows)
                {
                    if (((CheckBox)item.FindControl("chkChecado")).Checked == true)
                    {
                        linha = dt.NewRow();
    
                        linha["DADOS"] = ((Label)item.Cells[1].FindControl("lblDados")).Text.Trim();
                        linha["DOC_ID"] = ((Label)item.Cells[2].FindControl("lblItemIndex")).Text.Trim();
                        
                        dt.Rows.Add(linha);
                    }
                }
    
                divGrid2.Visible = true;
    
                grdGrid2.DataSource = dt;
                grdGrid2.DataBind();
    
            }
    
            private DataTable AdicionaColunasDataTable()
            {
                DataTable mDataTable = new DataTable();
    
                mDataTable.Columns.Add(new DataColumn("DOC_ID"));
                mDataTable.Columns.Add(new DataColumn("DADOS"));
    
                return mDataTable;
            }
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form runat="server">
            <div>
                <asp:GridView ID="grdDocSelecionado" runat="server" AutoGenerateColumns="False" Width="40%"
                    PageSize="20" DataKeyNames="DOC_ID" ToolTip="Selecione os documentos recebidos">
                    <Columns>
                        <asp:TemplateField ItemStyle-Width="5%">
                            <ItemTemplate>
                                <asp:CheckBox ID="chkChecado" runat="server" />
                            </ItemTemplate>
                            <ItemStyle HorizontalAlign="Center" />
                        </asp:TemplateField>
                        <asp:TemplateField Visible="false" ItemStyle-Width="15%" HeaderText="Código Item Listado">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
                            <ItemTemplate>
                                <asp:Label ID="lblDocId" runat="server" Text='<%#Eval("DOC_ID")%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField Visible="true" ItemStyle-Width="15%" HeaderText="Dados do Item">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
    
                            <ItemTemplate>
                                <asp:Label ID="lblDados" runat="server" Text='<%#Eval("DADOS")%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField Visible="true" ItemStyle-Width="15%" HeaderText="Data Item Index">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
    
                            <ItemTemplate>
                                <asp:Label ID="lblItemIndex" runat="server" Text='<%#Container.DataItemIndex%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
    
                    </Columns>
                </asp:GridView>
            </div>
            <div>
                <asp:Button ID="btnCopiar" runat="server" OnClick="btnCopiar_Click" Width="150px" Text="Copiar" />
            </div>
            <div visible="false" id="divGrid2" runat="server">
                <asp:GridView ID="grdGrid2" runat="server" AutoGenerateColumns="False" Width="40%"
                    PageSize="20" DataKeyNames="DOC_ID" ToolTip="Selecione os documentos recebidos">
                    <Columns>
                        <asp:TemplateField Visible="false" ItemStyle-Width="15%" HeaderText="Código Item Listado">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
                            <ItemTemplate>
                                <asp:Label ID="lblTeste1" runat="server" Text='<%#Eval("DOC_ID")%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField Visible="true" ItemStyle-Width="15%" HeaderText="Dados do Item">
                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                            <ItemStyle HorizontalAlign="center" />
    
                            <ItemTemplate>
                                <asp:Label ID="lblTeste" runat="server" Text='<%#Eval("DADOS")%>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                       
                    </Columns>
                </asp:GridView>
            </div>
        </form>
    </body>
    </html>

    Efetuei o click no botão copiar e os itens selecionados foram copiados para a lista de baixo Marcos. 

    Creio que o seu erro é o FindControl(""). Tente adicionar ele nessa linha

     DataRow[] dr = dt.Select("DOC_ID = '" + ((Label)grdBuscaDoc.Rows[i].Cells[1].FindControl("lblID")).Text.Trim() + "'");

    Espero que agora resolva o seu problema cara. 

    Abraço, Good Luck. 

    Fala Fernando, testei com esses códigos que você me passou, mas ainda assim nada...
    com este código aqui está quase lá. Eu consigo criar o segundo Grid com a quantidade de linhas selecionadas e colunas e tal, mas ainda faltam os dado, o grid vem vazio, apenas com as linhas e colunas.
    segue o código C#

    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"];
                }
                ViewState["DataTable"] = dt;
            }
    
            private void atualizaGrid(string numDtl, string numDoc)
            {
    
                numDTL = txtNum_DTLEC.Text;
                numDoc = txtNumDoc.Text;
    
                var bll_edtlec = new BLLDtl();
                var cec = bll_edtlec.ListarDocsIsoSup(numDtl, numDoc);
                grdBuscaDoc.Visible = true;
                grdBuscaDoc.DataSource = cec;
                grdBuscaDoc.DataBind();
            }
    
            #region Métodos
    
            private void PaginarGridDocs(string numDoc, string numDTL)
            {
                numDTL = txtNum_DTLEC.Text;
                numDoc = txtNumDoc.Text;
    
                var bll_edtlec = new BLLDtl();
                var cec = bll_edtlec.ListarDocsIsoSup(numDoc, numDTL);
                grdBuscaDoc.DataSource = cec;
                grdBuscaDoc.DataBind();
            }
    
            #endregion
    
            protected void btnPesq_Click(object sender, EventArgs e)
            {
                numDTL = txtNum_DTLEC.Text;
                numDoc = txtNumDoc.Text;
    
                atualizaGrid(numDTL, numDoc);
            }
    
            protected void btnLimpar_Click(object sender, EventArgs e)
            {
    
            }
    
            protected void btnPesqIncluir_Click(object sender, EventArgs e)
            {
                AddToDataTable();
                BindGrid();
    
                for (int i = 0; i < grdBuscaDoc.Rows.Count; i++)
                {
                    CheckBox chkDocs = (CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs");
    
                    if (((CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs")).Checked == true)
                    {
                        chkDocs.Checked = false;
                    }
                }
    
            }
    
            protected void btnPesqExcluir_Click(object sender, EventArgs e)
            {
    
            }
    
            protected void chkDocOnCheckedChanged(object sender, EventArgs e)
            {
    
            }
    
            protected void chkAllOnCheckedChanged(object sender, EventArgs e)
            {
                 
            }
    
            private DataTable CreateDataTable()
            {
                dt.Columns.Add("DOC_ID");
                dt.Columns.Add("TD");
                dt.Columns.Add("BC");
                dt.Columns.Add("OS1_FUNCT");
                dt.Columns.Add("NUM_DTL");
                dt.Columns.Add("DESIGNATION");
                dt.Columns.Add("DOCUMENT_NO");
                dt.Columns.Add("REVISAO");
                dt.Columns.Add("REV_DATE");
                dt.Columns.Add("QUANT_DOC");
    
                return dt;
            }
    
            private void AddToDataTable()
            {
                for (int i = 0; i < grdBuscaDoc.Rows.Count; i++)
                {
                    CheckBox chkDocs = (CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs");
    
                    if (((CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs")).Checked == true)
                    {
                        DataRow dr = dt.NewRow();
    
                        dr["DOC_ID"] = grdBuscaDoc.Rows[i].Cells[1].Text.Trim();
                        dr["TD"] = grdBuscaDoc.Rows[i].Cells[2].Text.Trim();
                        dr["BC"] = grdBuscaDoc.Rows[i].Cells[3].Text.Trim();
                        dr["OS1_FUNCT"] = grdBuscaDoc.Rows[i].Cells[4].Text.Trim();
                        dr["NUM_DTL"] = grdBuscaDoc.Rows[i].Cells[5].Text.Trim();
                        dr["DESIGNATION"] = grdBuscaDoc.Rows[i].Cells[6].Text.Trim();
                        dr["DOCUMENT_NO"] = grdBuscaDoc.Rows[i].Cells[7].Text.Trim();
                        dr["REVISAO"] = grdBuscaDoc.Rows[i].Cells[8].Text.Trim();
                        dr["REV_DATE"] = grdBuscaDoc.Rows[i].Cells[9].Text.Trim();
                        dr["QUANT_DOC"] = grdBuscaDoc.Rows[i].Cells[10].Text.Trim();
                        
                        dt.Rows.Add(dr);
                    }
                }
            }
    
            private void BindGrid()
            {
                grdDocSelecionado.DataSource = dt;
                grdDocSelecionado.DataBind();
            }
        }
    }

    Segue o Aspx, ainda sem o AccessKey, não sei porque ele não tá aceitando o AccessKey cara, parece que tá de sacanagem com a minha cara...

    <%@ Page Title="" Language="C#" MasterPageFile="~/fup_servicos/fup_servicos.master"
        AutoEventWireup="true" CodeBehind="incluir_dtlec.aspx.cs" Inherits="SisGem.WEB.fup_servicos.recebimento_doc.incluir_dtlec" %>
    
    <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
    <asp:Content ID="SisGemScripts" ContentPlaceHolderID="head" runat="server">
        <script src="../../scripts/Funcoes.js" type="text/javascript"></script>
        <script type="text/javascript" language="javascript">
    
            $("[id*=chkAll]").live("click", function () {
    
                var chkAll = $(this);
    
                var grid = $(this).closest("table");
    
                $("input[type=checkbox]", grid).each(function () {
    
                    if (chkAll.is(":checked")) {
    
                        $(this).attr("checked", "checked");
    
                        $("td", $(this).closest("tr")).addClass("selected");
    
                    } else {
    
                        $(this).removeAttr("checked");
    
                        $("td", $(this).closest("tr")).removeClass("selected");
    
                    }
    
                });
    
            });
    
            $("[id*=chkDocs]").live("click", function () {
    
                var grid = $(this).closest("table");
    
                var chkAll = $("[id*=chkAll]", grid);
    
                if (!$(this).is(":checked")) {
    
                    $("td", $(this).closest("tr")).removeClass("selected");
    
                    chkAll.removeAttr("checked");
    
                } else {
    
                    $("td", $(this).closest("tr")).addClass("selected");
    
                    if ($("[id*=chkDocs]", grid).length == $("[id*=chkDocs]:checked", grid).length) {
    
                        chkHeader.attr("checked", "checked");
    
                    }
    
                }
    
            });
    
        </script>
        <style type="text/css">
            .style2
            {
                width: 72px;
            }
            .style3
            {
                width: 86px;
            }
            .style6
            {
                width: 127px;
            }
            .Botao
            {
            }
            .style7
            {
                width: 66px;
            }
            .style8
            {
                width: 20px;
            }
            .style9
            {
                width: 19px;
            }
            .style10
            {
                width: 90px;
            }
            .selected
            {
                background-color: #A1DCF2;
            }
        </style>
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
        <!-- inicio #formulario -->
        <asp:UpdatePanel runat="server" ID="upFiltro" UpdateMode="Conditional">
            <ContentTemplate>
                <asp:Panel ID="pnlFiltro" runat="server" Visible="true">
                    <div class="TituloPagina">
                        <asp:Label ID="lblTitulo" runat="server" Text="Enviar e-DTL-EC"></asp:Label>
                    </div>
                    <div id="FiltroBusca">
                        <table id="tbFiltroBusca" border="1" width="100%">
                            <tr>
                                <td>
                                    <asp:LinkButton runat="server" ID="lnkfake"></asp:LinkButton>
                                </td>
                            </tr>
                            <tr>
                                <td width="100%">
                                    <table id="Table2" border="1" width="100%" align="center">
                                        <tr>
                                            <td align="left">
                                                <table width="100%" cellpadding="1" cellspacing="1" style="height: 17px">
                                                    <table border="0">
                                                        <tr>
                                                            <td class="style7">
                                                                <asp:Label ID="lblNum_DTLEC" runat="server" CssClass="campos">N° DTL-EC:</asp:Label>
                                                            </td>
                                                            <td>
                                                                <asp:TextBox ID="txtNum_DTLEC" runat="server" CssClass="CaixaTexto" MaxLength="30"
                                                                    ValidationGroup="MKE" Width="92px"></asp:TextBox>
                                                            </td>
                                                            <td class="style10">
                                                                <asp:Label ID="lblNumDoc" runat="server" CssClass="campos">N° Documento:</asp:Label>
                                                            </td>
                                                            <td>
                                                                <asp:TextBox ID="txtNumDoc" runat="server" CssClass="CaixaTexto" MaxLength="30" ValidationGroup="MKE"
                                                                    Width="92px"></asp:TextBox>
                                                            </td>
                                                            <td class="style3">
                                                                <asp:Label ID="lblDTLEC_DATA_ENVIO" runat="server" CssClass="campos">Data de envio:</asp:Label>
                                                            </td>
                                                            <td class="style2">
                                                                <asp:TextBox ID="txtSOLIC_DATA_INCLUSAO" runat="server" CssClass="CaixaTexto" MaxLength="8"
                                                                    Style="text-align: justify" ValidationGroup="MKE" Width="70px"></asp:TextBox>
                                                                <td class="style8">
                                                                    <asp:ImageButton ID="imgCal" runat="server" CausesValidation="False" ImageUrl="~/images/Calendar_scheduleHS.png" />
                                                                </td>
                                                                <asp:MaskedEditExtender ID="mskexDeliv" runat="server" AcceptNegative="Left" DisplayMoney="Left"
                                                                    ErrorTooltipEnabled="True" Mask="99/99/9999" MaskType="Date" MessageValidatorTip="true"
                                                                    OnFocusCssClass="MaskedEditFocus" OnInvalidCssClass="MaskedEditError" TargetControlID="txtSOLIC_DATA_INCLUSAO">
                                                                </asp:MaskedEditExtender>
                                                                <asp:MaskedEditValidator ID="mevDeliv" runat="server" ControlExtender="mskexDeliv"
                                                                    ControlToValidate="txtSOLIC_DATA_INCLUSAO" Display="Dynamic" EmptyValueBlurredText="*"
                                                                    InvalidValueBlurredMessage="*" InvalidValueMessage="Data inválida" Style="color: Red;
                                                                    display: none;" ValidationGroup="MKE"></asp:MaskedEditValidator>
                                                                <asp:CalendarExtender ID="calendarDELIV" runat="server" PopupButtonID="imgCal" TargetControlID="txtSOLIC_DATA_INCLUSAO">
                                                                </asp:CalendarExtender>
                                                            </td>
                                                            <td class="style6">
                                                                <asp:Label ID="lblDATA_RECEBIMENTO" runat="server" CssClass="campos">Data de recebimento:</asp:Label>
                                                            </td>
                                                            <td>
                                                                <asp:TextBox ID="txtSOLIC_DATA_CONCLUSAO" runat="server" CssClass="CaixaTexto" MaxLength="8"
                                                                    Style="text-align: justify" ValidationGroup="MKE2" Width="70px"></asp:TextBox>
                                                                <td class="style9">
                                                                    <asp:ImageButton ID="imgCal2" runat="server" CausesValidation="False" ImageUrl="~/images/Calendar_scheduleHS.png" />
                                                                </td>
                                                                <asp:MaskedEditExtender ID="mskexDeliv2" runat="server" AcceptNegative="Left" DisplayMoney="Left"
                                                                    ErrorTooltipEnabled="True" Mask="99/99/9999" MaskType="Date" MessageValidatorTip="true"
                                                                    OnFocusCssClass="MaskedEditFocus" OnInvalidCssClass="MaskedEditError" TargetControlID="txtSOLIC_DATA_CONCLUSAO">
                                                                </asp:MaskedEditExtender>
                                                                <asp:MaskedEditValidator ID="mevDeliv2" runat="server" ControlExtender="mskexDeliv2"
                                                                    ControlToValidate="txtSOLIC_DATA_CONCLUSAO" Display="Dynamic" EmptyValueBlurredText="*"
                                                                    InvalidValueBlurredMessage="*" InvalidValueMessage="Data inválida" Style="color: Red;
                                                                    display: none;" ValidationGroup="MKE2"></asp:MaskedEditValidator>
                                                                <asp:CalendarExtender ID="calendarDELIV2" runat="server" PopupButtonID="imgCal2"
                                                                    TargetControlID="txtSOLIC_DATA_CONCLUSAO">
                                                                </asp:CalendarExtender>
                                                            </td>
                                                        </tr>
                                                    </table>
                                            </td>
                                            <tr>
                                                <td align="left" valign="middle" rowspan="2">
                                                    <asp:Button CssClass="Botao" ID="btnPesq" runat="server" TabIndex="2" Text="Pesquisar"
                                                        OnClick="btnPesq_Click"></asp:Button>
                                                    &nbsp;&nbsp;
                                                    <asp:Button CssClass="Botao" ID="btnLimpar" runat="server" TabIndex="2" Text="Limpar"
                                                        OnClick="btnLimpar_Click" ToolTip="Limpar campos de filtro"></asp:Button>
                                                </td>
                                            </tr>
                                        </tr>
                                    </table>
                            </tr>
                        </table>
                        </td> </tr>
                        <tr>
                            <td>
                                <!-- inicio #Panel Grid de Consulta -->
                                <table width="100%" align="center" id="Table1">
                                    <tr>
                                        <td>
                                            <table id="Table3" width="100%" border="1" align="center" bgcolor="whitesmoke">
                                                <tr>
                                                    <asp:GridView ID="grdBuscaDoc" runat="server" AutoGenerateColumns="False" Width="100%"
                                                        PageSize="20" DataKeyNames="DOC_ID" ToolTip="Selecione os documentos recebidos">
                                                        <Columns>
                                                            <asp:TemplateField>
                                                                <HeaderTemplate>
                                                                    Documentos Recebidos
                                                                    <br />
                                                                    <asp:CheckBox ID="chkAll" runat="server" onclick="checkAll(this);" AutoPostBack="true" />
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:CheckBox ID="chkDocs" runat="server" OnCheckedChanged="chkDocOnCheckedChanged"
                                                                         AutoPostBack="true"  />
                                                                </ItemTemplate>
                                                                <ItemStyle HorizontalAlign="Center" />
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="DOC_ID">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    DOC_ID
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblDOC" runat="server" Text='<%#Eval("DOC_ID")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="TD">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    TD
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblTD" runat="server" Text='<%#Eval("TD")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="BC">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Assunto
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblAssunto" runat="server" Text='<%#Eval("BC")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="OS1_FUNCT">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" Width="80px" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Estrutura
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblFuncao" runat="server" Text='<%#Eval("OS1_FUNCT")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="NUM_DTL">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    DTL
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblNumDTL" runat="server" Text='<%#Eval("NUM_DTL")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="DESIGNATION">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Descrição
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblDescricao" runat="server" Text='<%#Eval("DESIGNATION")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="DOCUMENT_NO">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Número Documento
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblDatReceb" runat="server" Text='<%#Eval("DOCUMENT_NO")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="REVISAO">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Revisão
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblRevisao" runat="server" Text='<%#Eval("REVISAO")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField Visible="false" SortExpression="REV_DATE">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Data Revisão
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblRevDate" runat="server" Text='<%#Eval("REV_DATE")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField SortExpression="QUANT_DOC">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <HeaderTemplate>
                                                                    Quantidade Documentos
                                                                </HeaderTemplate>
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblQntDocs" runat="server" Text='<%#Eval("QUANT_DOC")%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                            <asp:TemplateField Visible="true" ItemStyle-Width="15%" HeaderText="Data Item Index">
                                                                <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                                                <ItemStyle HorizontalAlign="center" />
                                                                <ItemTemplate>
                                                                    <asp:Label ID="lblItemIndex" runat="server" Text='<%#Container.DataItemIndex%>'></asp:Label>
                                                                </ItemTemplate>
                                                            </asp:TemplateField>
                                                        </Columns>
                                                        <AlternatingRowStyle BackColor="whitesmoke" />
                                                        <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
                                                        <HeaderStyle BackColor="#003F86" Font-Bold="True" ForeColor="White" />
                                                        <PagerStyle BackColor="#003F86" ForeColor="White" HorizontalAlign="Center" />
                                                        <RowStyle BackColor="White" ForeColor="Black" />
                                                        <SortedAscendingCellStyle BackColor="#F1F1F1" />
                                                        <SortedAscendingHeaderStyle BackColor="#0000A9" />
                                                        <SortedDescendingCellStyle BackColor="#CAC9C9" />
                                                        <SortedDescendingHeaderStyle BackColor="#000065" />
                                                        <EmptyDataTemplate>
                                                            Não existe elemento para associar ao grupo.
                                                        </EmptyDataTemplate>
                                                        <SortedAscendingCellStyle BackColor="#F1F1F1" />
                                                        <SortedAscendingHeaderStyle BackColor="#0000A9" />
                                                        <SortedDescendingCellStyle BackColor="#CAC9C9" />
                                                        <SortedDescendingHeaderStyle BackColor="#000065" />
                                                    </asp:GridView>
                                                </tr>
                                            </table>
                                        </td>
                                    </tr>
                                </table>
                                <!-- fim #Panel Grid de Volumes -->
                            </td>
                        </tr>
                        <%-- Botoes --%>
                        <tr>
                            <td style="padding: 10px 10px 10px 10px;" bgcolor="#248CC0">
                                <asp:Button ID="btnPesqIncluir" runat="server" CssClass="Botao" Text="Gerar eDTL-EC - CEC"
                                    OnClick="btnPesqIncluir_Click" Width="136px" />
                            </td>
                        </tr>
                        </table>
                        <tr>
                            <td>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <asp:GridView ID="grdDocSelecionado" runat="server" AutoGenerateColumns="False" Width="100%"
                                    PageSize="20" DataKeyNames="DOC_ID" ToolTip="Selecione os documentos recebidos">
                                    <Columns>
                                        <asp:TemplateField>
                                            <HeaderTemplate>
                                                Documentos Recebidos
                                                <br />
                                                <asp:CheckBox ID="chkAll" runat="server" AutoPostBack="true" />
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:CheckBox ID="chkDocs" runat="server" OnCheckedChanged="chkDocOnCheckedChanged"
                                                     AutoPostBack="true" />
                                            </ItemTemplate>
                                            <ItemStyle HorizontalAlign="Center" />
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                ID
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblDOC" runat="server" Text='<%#Eval("DOC_ID")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                TD
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblTD" runat="server" Text='<%#Eval("TD")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                Assunto
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblAssunto" runat="server" Text='<%#Eval("BC")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" Width="80px" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                Estrutura
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblFuncao" runat="server" Text='<%#Eval("OS1_FUNCT")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                DTL
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblNumDTL" runat="server" Text='<%#Eval("NUM_DTL")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                Descrição
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblDescricao" runat="server" Text='<%#Eval("DESIGNATION")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                Número Documento
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblDatReceb" runat="server" Text='<%#Eval("DOCUMENT_NO")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                Revisão
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblLoginReceb" runat="server" Text='<%#Eval("REVISAO")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField Visible="false">
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                Data Revisão
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblDocStatus" runat="server" Text='<%#Eval("REV_DATE")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                        <asp:TemplateField>
                                            <HeaderStyle Font-Bold="true" HorizontalAlign="center" />
                                            <ItemStyle HorizontalAlign="center" />
                                            <HeaderTemplate>
                                                Quantidade Documentos
                                            </HeaderTemplate>
                                            <ItemTemplate>
                                                <asp:Label ID="lblStatusDTLEC" runat="server" Text='<%#Eval("QUANT_DOC")%>'></asp:Label>
                                            </ItemTemplate>
                                        </asp:TemplateField>
                                    </Columns>
                                    <AlternatingRowStyle BackColor="whitesmoke" />
                                    <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
                                    <HeaderStyle BackColor="#003F86" Font-Bold="True" ForeColor="White" />
                                    <PagerStyle BackColor="#003F86" ForeColor="White" HorizontalAlign="Center" />
                                    <RowStyle BackColor="White" ForeColor="Black" />
                                    <SortedAscendingCellStyle BackColor="#F1F1F1" />
                                    <SortedAscendingHeaderStyle BackColor="#0000A9" />
                                    <SortedDescendingCellStyle BackColor="#CAC9C9" />
                                    <SortedDescendingHeaderStyle BackColor="#000065" />
                                    <EmptyDataTemplate>
                                        Não existe elemento para associar ao grupo.
                                    </EmptyDataTemplate>
                                    <SortedAscendingCellStyle BackColor="#F1F1F1" />
                                    <SortedAscendingHeaderStyle BackColor="#0000A9" />
                                    <SortedDescendingCellStyle BackColor="#CAC9C9" />
                                    <SortedDescendingHeaderStyle BackColor="#000065" />
                                </asp:GridView>
                            </td>
                        </tr>
                    </div>
                </asp:Panel>
                <!-- fim #formulario -->
            </ContentTemplate>
        </asp:UpdatePanel>
    </asp:Content>
    

    ta quase chegando lá, ta faltando pouco, só falta mesmo é trazer os dados... Se tiver mais alguma coisa em que você possa me ajudar aí...v

    Desde já agradeço a moral que você tem dado... Vlw msm

    Abraço...


    Marcos Paulo - Analista de Sistemas

    quinta-feira, 12 de setembro de 2013 19:11
  • Marcos, como falei anteriormente falta o FindControl nesse carinha aqui:

     if (((CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs")).Checked == true)
                    {
                        DataRow dr = dt.NewRow();
    
                        dr["DOC_ID"] = ((Label)grdBuscaDoc.Rows[i].Cells[1].FindControl("")).Text.Trim();
                        dr["TD"] = grdBuscaDoc.Rows[i].Cells[2].Text.Trim();
                        dr["BC"] = grdBuscaDoc.Rows[i].Cells[3].Text.Trim();
                        dr["OS1_FUNCT"] = grdBuscaDoc.Rows[i].Cells[4].Text.Trim();
                        dr["NUM_DTL"] = grdBuscaDoc.Rows[i].Cells[5].Text.Trim();
                        dr["DESIGNATION"] = grdBuscaDoc.Rows[i].Cells[6].Text.Trim();
                        dr["DOCUMENT_NO"] = grdBuscaDoc.Rows[i].Cells[7].Text.Trim();
                        dr["REVISAO"] = grdBuscaDoc.Rows[i].Cells[8].Text.Trim();
                        dr["REV_DATE"] = grdBuscaDoc.Rows[i].Cells[9].Text.Trim();
                        dr["QUANT_DOC"] = grdBuscaDoc.Rows[i].Cells[10].Text.Trim();
                        
                        dt.Rows.Add(dr);
                    }

    Eu inclui no primeiro item. 

    Pra você ter a ideia do esquema. 

    Se você debugar vai ver que ele estes itens da linha selecionada vão estar sem valor algum. 

    Vai na fé malandro que agora vai funfa. hehehehe.. 

    Abraço.

    • Marcado como Resposta Marcos Paulo P.M sexta-feira, 13 de setembro de 2013 10:40
    quinta-feira, 12 de setembro de 2013 19:20
  • Marcos, como falei anteriormente falta o FindControl nesse carinha aqui:

     if (((CheckBox)grdBuscaDoc.Rows[i].Cells[0].FindControl("chkDocs")).Checked == true)
                    {
                        DataRow dr = dt.NewRow();
    
                        dr["DOC_ID"] = ((Label)grdBuscaDoc.Rows[i].Cells[1].FindControl("")).Text.Trim();
                        dr["TD"] = grdBuscaDoc.Rows[i].Cells[2].Text.Trim();
                        dr["BC"] = grdBuscaDoc.Rows[i].Cells[3].Text.Trim();
                        dr["OS1_FUNCT"] = grdBuscaDoc.Rows[i].Cells[4].Text.Trim();
                        dr["NUM_DTL"] = grdBuscaDoc.Rows[i].Cells[5].Text.Trim();
                        dr["DESIGNATION"] = grdBuscaDoc.Rows[i].Cells[6].Text.Trim();
                        dr["DOCUMENT_NO"] = grdBuscaDoc.Rows[i].Cells[7].Text.Trim();
                        dr["REVISAO"] = grdBuscaDoc.Rows[i].Cells[8].Text.Trim();
                        dr["REV_DATE"] = grdBuscaDoc.Rows[i].Cells[9].Text.Trim();
                        dr["QUANT_DOC"] = grdBuscaDoc.Rows[i].Cells[10].Text.Trim();
                        
                        dt.Rows.Add(dr);
                    }

    Eu inclui no primeiro item. 

    Pra você ter a ideia do esquema. 

    Se você debugar vai ver que ele estes itens da linha selecionada vão estar sem valor algum. 

    Vai na fé malandro que agora vai funfa. hehehehe.. 

    Abraço.

    VLLWWWW Fernandoooo! era só utilizar a lable msm cara, vlw pela dica, ta guardado, só pra aproveitar que vc ta com a mão na massa, como faço pra deleter só do Grid, botei um botão para excluir, quero excluir diretamente a linha, não precisa percorrer  o grid para encontrar os selecionados, no momento q ele clica no botão, a linha é excluída. Alguma dica, só pra fechar o assunto de vez??

    Abraçoo e mais uma vez muito obrigadoo pela força!!


    Marcos Paulo - Analista de Sistemas

    sexta-feira, 13 de setembro de 2013 10:44
  • Que isso cara, bom saber que seu problema foi resolvido.

    Cara, a Grid tem um evento chamado RowDeleting que você não precisa nem de Botão cara. 

    O seu botão está na linha ou fora? 

    Se ele estiver fora da grid sem que você selecione algum item não dá tá. 

    Vou te passar alguns links cara sobre o RowDeliting, que funciona assim que você clica na linha da grid. 

    http://stackoverflow.com/questions/7226548/how-to-delete-row-in-gridview-using-rowdeleting-event

    http://forums.asp.net/t/1648625.aspx

    http://www.codeproject.com/Questions/252190/Row-Deleting-event-in-gridview-control

    http://www.aspsnippets.com/Articles/ASPNet-GridView---Delete-Row-with-Confirmation.aspx

    Cara com isso acho que você já vai conseguir o resultado que espera. 

    Caso queira utilizar os checkBoxes faça assim: Guarde seu DataTable na ViewState, Percorra a lista, recupere o item selecionado, com esse item selecionado você remove o item desse DataTable e efetua o bind com a ViewState. 

    Espero ajudar novamente. 

    Abraço, Good Luck.

     


    sexta-feira, 13 de setembro de 2013 11:54
  • Fala Fernando, consegui resolver, mas de outra maneira... Vlw pela força ae...

    Abraço


    Marcos Paulo - Analista de Sistemas

    segunda-feira, 16 de setembro de 2013 13:09
  • Opa ... precisando estamos ai Marcos. 

    Abraço.

    segunda-feira, 16 de setembro de 2013 13:16