Recuperando FindControl do repeater pai no evento do repeater filho
25/02/2016
0
Olá pessoal.
Estou com dificuldade para conseguir pegar um campo do meu repeater pai no click do meu linkbutton que esta dentro de outr repeater (filho).
Meu repeater pai contem o código do relatório e demais informações e meu repeater filho contem as datas desse relatório. Quando o usuário clicar em uma determinada data eu preciso pegar esse código do pai e tbem pegar a data para assim fazer o processo. Mas não estou conseguindo fazer nem um e nem outro.
Segue meu html:
Meu .cs esta assim:
Segue a imagem do relatório para vcs terem uma noção do que eu estou tentando fazer.
[img]http://arquivo.devmedia.com.br/forum/imagem/431992-20160225-095511.png[/img]
Estou com dificuldade para conseguir pegar um campo do meu repeater pai no click do meu linkbutton que esta dentro de outr repeater (filho).
Meu repeater pai contem o código do relatório e demais informações e meu repeater filho contem as datas desse relatório. Quando o usuário clicar em uma determinada data eu preciso pegar esse código do pai e tbem pegar a data para assim fazer o processo. Mas não estou conseguindo fazer nem um e nem outro.
Segue meu html:
<asp:Repeater ID="Repeater1" OnItemDataBound="rptRelatorioFavoritos_ItemDataBound" runat="server"> <HeaderTemplate> <table> <tr class="titulo"> <th colspan="4">Favoritos</th> </tr> <tr> <th width="5%" class="td_titulo">Relatório</th> <th width="10%" class="td_titulo">Assunto</th> <th width="20%" class="td_titulo">Descrição</th> <th width="25%" class="td_titulo">Clique na Data Desejada</th> </tr> </HeaderTemplate> <ItemTemplate> <tr class="tr_branco"> <td class="td_branco"> <asp:ImageButton CommandArgument='<%#DataBinder.Eval(Container.DataItem, "CodRelatorio")%>' ID="imgbFavorito" ImageUrl="~/Content/imgs/BookDel.gif" OnCommand="imgbFavorito_Command" runat="server" ToolTip="Remover do seus favoritos?" /> <asp:Label ID="lblCodRelatorio" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "CodRelatorio")%>' /> </td> <td class="td_branco"> <asp:Label ID="lblAssunto" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "AssuntoRelatorio")%>'></asp:Label> </td> <td class="td_branco"> <asp:Label ID="lblDescricao" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "DescricaoRelatorio")%>'></asp:Label> </td> <td class="td_branco"> <asp:Label ID="lblLocal" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "LojaRelatorio")%>'></asp:Label> <asp:Repeater ID="rptRelFilho" OnItemDataBound="rptRelFilho_OnItemDataBound" OnItemCommand="rptRelFilho_OnItemCommand" runat="server"> <ItemTemplate> <asp:LinkButton ID="lkbDataRelatorio" runat="server"><%#DataBinder.Eval(Container.DataItem, "DataRelatorio")%></asp:LinkButton> </ItemTemplate> </asp:Repeater> <asp:LinkButton ID="lkbDataRelatorio02" runat="server">...</asp:LinkButton> </td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate>
Meu .cs esta assim:
protected void rptRelFilho_OnItemCommand(object source, RepeaterCommandEventArgs e) { var itensPai = e.Item.Parent.Parent; var lblCodRel = (Label)itensPai.FindControl("CodRelatorio"); var link = (LinkButton)e.Item.FindControl("DataRelatorio"); string v = link.Text; }
Segue a imagem do relatório para vcs terem uma noção do que eu estou tentando fazer.
[img]http://arquivo.devmedia.com.br/forum/imagem/431992-20160225-095511.png[/img]
Luciano Jesus
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)