none
Eventos em controles criados em runtime e gravar em sql server RRS feed

  • Pergunta

  • Boa noite Galera,

    Preciso de uma ajuda, estou criando um aplicativo webform c# e tenho vários controles criados em tempo de execução, mas preciso criar um método de gravação para enviar essas informações para minha base em SQL.

    Alguém poderia me ajuda?

    Obrigado.

    sexta-feira, 11 de agosto de 2017 01:18

Respostas

  • É importante que você, ao adicionar os controles, defina um ID que você possa localiza-los depois em tempo de execução. Você pode executar o método .FindControl do panel (na verdade ele está disponivel em qualquer controle que possa conter outros controles) para localizar as instancias das suas caixas, exemplo:

    TextBox txtNome = MyPanel.FindControl("txtNome");

    Você pode executar esse código por exemplo  no seu botão Salvar (por exemplo). Os controles dinâmicos precisam ser readicionados à página a cada post back, por isso é importante, dentro do seu Page_Load, quando o IsPostBack for igual a true, você readicionar os controles com os mesmos IDs.

    Referência: https://www.aspsnippets.com/Articles/Dynamic-Controls-Made-Easy-in-ASP.Net.aspx


    ​Rafael Esquiçato Professional Scrum Master MCP, MCTS

    segunda-feira, 14 de agosto de 2017 00:30

Todas as Respostas

  • Boa noite,

    Qual problema está tendo? Obter os valores dos seus controles? 


    ​Rafael Esquiçato Professional Scrum Master MCP, MCTS

    sexta-feira, 11 de agosto de 2017 02:34
  • Na verdade nao tenho ideia de como criar esse metodo para submeter os textbox criados em runtime.
    sexta-feira, 11 de agosto de 2017 02:50
  • Boa tarde, ppsantos2002. Tudo bem?

    Essa é uma questão de "How to/Customização", ou seja, se trata de como fazer, implementar ou melhorar algo.
    Essa área do fórum é direcionada a problemas de "Break Fix/Erro", ou seja, erros na ferramenta, etc.

    Você deveria abrir essa questão como uma discussão, assim junto com a comunidade poderá encontrar a melhor maneira de implementar o que precisa.

    Para abrir uma discussão, faça o mesmo processo de abrir uma pergunta, mas ao invés de marcar como pergunta, marque como discussão, assim:

    Atenciosamente,


    Filipe B de Castro

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    sexta-feira, 11 de agosto de 2017 21:00
    Moderador
  • Certo, como você está adicionando esses TextBoxes? É um repeater, um grid, está adicionando direto ao form?

    ​Rafael Esquiçato Professional Scrum Master MCP, MCTS

    sexta-feira, 11 de agosto de 2017 21:58
  • Dentro de um Panel no webform
    sábado, 12 de agosto de 2017 02:17
  • É importante que você, ao adicionar os controles, defina um ID que você possa localiza-los depois em tempo de execução. Você pode executar o método .FindControl do panel (na verdade ele está disponivel em qualquer controle que possa conter outros controles) para localizar as instancias das suas caixas, exemplo:

    TextBox txtNome = MyPanel.FindControl("txtNome");

    Você pode executar esse código por exemplo  no seu botão Salvar (por exemplo). Os controles dinâmicos precisam ser readicionados à página a cada post back, por isso é importante, dentro do seu Page_Load, quando o IsPostBack for igual a true, você readicionar os controles com os mesmos IDs.

    Referência: https://www.aspsnippets.com/Articles/Dynamic-Controls-Made-Easy-in-ASP.Net.aspx


    ​Rafael Esquiçato Professional Scrum Master MCP, MCTS

    segunda-feira, 14 de agosto de 2017 00:30
  • Bom dia,

    Por falta de retorno, essa thread está encerrada.

    Se necessário, favor abrir uma nova thread.

    Atenciosamente,

    Filipe B de Castro

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    segunda-feira, 21 de agosto de 2017 13:18
    Moderador