Carregando dinamicamente um user control no ASP.NET

 

Olá pessoal, um dia desses tive a necessidade de inserir um controle UserControl e dinamicamente em uma página aspx. Após algumas tentativas cheguei a uma solução no qual apresentarei para vocês.

 

Para o nosso exemplo, crie uma nova aplicação WEB no visual studio. Clique com o botão direito no projeto, Add => New Item. Selecione a opção Web User Control para criamos um novo user control.

           

Insira alguns controles no UserControl, lembrando que carregaremos o mesmo no nosso aspx dinamicamente.

 

Feito isso, vamos agora carregar o conteúdo de webFormTeste dentro do nosso user control que está na nossa página principal. Para isso, digite o seguinte código no Page_Load da página principal.

 

 

    public partial class WebForm1 : System.Web.UI.Page

    {

        protected void Page_Load(object sender, EventArgs e)

        {

            this.Form.Controls.Add(LoadControl("WebFormTeste.ascx"));

        }

    }

 

Como você pode observar, primeiro nós acessamos o formulário, daí então acessamos a propriedade controls do formulário para acessar os controles do mesmo. Após isso damos um add passando como parâmetro o LoadControl que retornará o userControl que especificamos no seu parâmetro e no nosso caso é o “WebFormTeste.ascx

 

 

 

É isso aí pessoal, vou ficando por aqui com mais esta dica.

Espero que tenham gostado e que possa ter sido útil.

Fiquem a vontade para dar feedback, críticas e sugestões de novos temas para os próximos artigos.

 

Um abraço.

Ricardo Coelho.

http://www.agilexp.blogspot.com/