Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

neycm

CheckBox em GridView

Recommended Posts

Bom dia meus amigos!

 

Embora possa parecer um tópico repetitível, afirmo que o meu problema é diferente.

 

Peguei aqui mesmo no fórum uma orientação de como fazer seleção múltipla no gridview usando checkbox, mas ocorre que sempre que eu clico no botão "vincular" que faz a seleção múltipla todos os IF's que testam se o checkbox está checked retornam false. Posso marcar todos mas sempre retorna false.

O grid estava num updatePanel e pensando ser um problema no postback assíncrono tirei o updatePanel... e nada!!! Continua o mesmo problema. Já procurei em vários fóruns e todo mundo ensina do mesmo jeito que fiz e que peguei aqui mesmo, mas o meu não dá certo. Me ajudem por favor!

 

   protected void btnVincular_Click(object sender, EventArgs e)
    {
            for (int i = 0; i < gvLista.Rows.Count; i++)
            {
                System.Web.UI.WebControls.CheckBox ckb = (System.Web.UI.WebControls.CheckBox)gvLista.Rows[i].FindControl("ckbList");
                if (ckb != null)
                {
                    if(ckb.Checked)
                    id = Convert.ToInt32(gvLista.Rows[i].Cells[4].Text);
                    ids.Add(id); 
                }
            }
    }

Código da página onde criei o grid

                                        <asp:GridView ID="gvLista" runat="server" AutoGenerateColumns="False" 
                                            BackColor="White" BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" 
                                            CellPadding="4" DataKeyNames="_disciplinaID" ForeColor="Black" 
                                            GridLines="Vertical" 
                                            Width="700px" onprerender="gvLista_PreRender">
                                            <RowStyle BackColor="#F7F7DE" />
                                            <Columns>
                                                <asp:BoundField DataField="_disciplinaID" HeaderText="_disciplinaID" 
                                                    SortExpression="_disciplinaID" Visible="False" />
                                                <asp:BoundField DataField="_nomeDisciplina" HeaderText="Nome da Disciplina" 
                                                    SortExpression="_nomeDisciplina" />
                                                <asp:BoundField DataField="_cargaHoraria" HeaderText="Carga Horária" 
                                                    SortExpression="_cargaHoraria" />
                                                <asp:TemplateField>
                                                    <ItemTemplate>
                                                        <asp:CheckBox ID="ckbList" runat="server" />
                                                    </ItemTemplate>
                                                </asp:TemplateField>
                                                <asp:TemplateField HeaderText="ID" Visible="False">
                                                    <ItemTemplate>
                                                        <asp:Label ID="lbID" runat="server" Text='<%# Eval("_disciplinaID") %>'></asp:Label>
                                                    </ItemTemplate>
                                                </asp:TemplateField>
                                            </Columns>
                                            <FooterStyle BackColor="#CCCC99" />
                                            <PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
                                            <SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
                                            <HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
                                            <AlternatingRowStyle BackColor="White" />
                                        </asp:GridView>

O checkBox fica marcado no grid quando clico no checkbox mas ao clicar no botão vincular coloquei um breakpoint e vi que o checked está sempre false, mesmo na linha onde o checkbox está marcado.

 

Se puderem me ajudar agradeço!

 

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.