none
Como acessar componentes que estão em uma Gridview? RRS feed

  • Pergunta

  • Tenho um textbox dentro de um item template, na gridview. Quero deixá-lo como invisível e, só quando o usuário clicar em um botão(que também está na gridview), ele apareça.

    Isso seria muito fácil fazer usando a opção visible(do txt) dentro do evento click do botão, porém, quando abro esse evento e digito o nome do textbox, não aparece nenhuma referencia a ele para que eu possa alterar seus parâmetros em tempo de execução.

    Alguém pode me ajudar com isso?

     

    Obrigado, desde já.

    terça-feira, 20 de setembro de 2011 02:21

Respostas

  • Bom Dia Fael..

    Então segue como ficaria para manipular um TextBox dentro do GridView.

    Adicionar no Button o ComandArgument para obtermos a index da linha clicada: 

    CommandArgument="<%# ((GridViewRow) Container).RowIndex %>"
    

    No evento do botão adicione:

    TextBox objTxt = (TextBox)gridTeste.Rows[int.Parse(((Button) sender).CommandArgument)].FindControl("txtCampo");
    objTxt.Visible = false;
    


    No FindControl tem que passar o ID do seu TextBox no meu caso é txtCampo

    Qualquer dúvida segue o link: http://msdn.microsoft.com/pt-br/library/bb907626.aspx

    Espero ter Ajudado....


    Eder dos Santos Silva Analista Programador Pleno Portfólio: http://www.ederssilva.com.br
    • Sugerido como Resposta Samuel_Cazelli terça-feira, 20 de setembro de 2011 10:56
    • Marcado como Resposta Harley Araujo quarta-feira, 21 de setembro de 2011 13:02
    terça-feira, 20 de setembro de 2011 04:27

Todas as Respostas

  • Bom Dia Fael..

    Então segue como ficaria para manipular um TextBox dentro do GridView.

    Adicionar no Button o ComandArgument para obtermos a index da linha clicada: 

    CommandArgument="<%# ((GridViewRow) Container).RowIndex %>"
    

    No evento do botão adicione:

    TextBox objTxt = (TextBox)gridTeste.Rows[int.Parse(((Button) sender).CommandArgument)].FindControl("txtCampo");
    objTxt.Visible = false;
    


    No FindControl tem que passar o ID do seu TextBox no meu caso é txtCampo

    Qualquer dúvida segue o link: http://msdn.microsoft.com/pt-br/library/bb907626.aspx

    Espero ter Ajudado....


    Eder dos Santos Silva Analista Programador Pleno Portfólio: http://www.ederssilva.com.br
    • Sugerido como Resposta Samuel_Cazelli terça-feira, 20 de setembro de 2011 10:56
    • Marcado como Resposta Harley Araujo quarta-feira, 21 de setembro de 2011 13:02
    terça-feira, 20 de setembro de 2011 04:27
  • Desculpe a demora, Eder. Não pude ver isso ontem.

    Hoje a noite testarei e retorno para dizer se consegui! Muito obrigado!

    quarta-feira, 21 de setembro de 2011 13:09