none
Componentes de um form em um UserControl RRS feed

  • Pergunta

  • Pessoal gostaria de saber como posso usar componentes de um form em um UserControl. O que quero fazer é o seguinte:

    Criei um panel e de acordo com o botão em que o usuário clicar aparece um determinado UserControl dentro desse panel. Quando o usuário clicar no botão Musica 1(esse botão já está dentro de um UserControl e é exido no panel) outro UserControl deve abrir. Para o userControl ser exibido no panel estou usando o seguinte :

    private userControl1 musica = new  userControl1();

    panel1.Controls.Add(this.musica)

    Porém o panel1 está em um form, então não consigo fazer com que no userControl em que está o botão Musica1 apareça esse panel para poder exibir o outro UserControl.

    Deu para entender?

    Também gostaria de saber como usar componentes de um form em outro.

    domingo, 26 de março de 2017 20:06

Respostas

  • Olá,

    No seu caso, acredito que o problema está na separação dos componentes. Então, vou propor uma solução:

    1 - Crie um Form onde ficarão os botões de navegação (musica1, musica2, etc...) e o panel1 (que exibe os UserControls). A ideia é que esse Form controle a exibição dos UserControls de acordo com a ação do menu.
    2 - Então, ao clicar no botão do menu (música1, por exemplo), adicione a seguinte linha no evento click:

    panel1.Controls.Add(this.musica)

    3 - Lembre-se de criar os UserControls na mesma dimensão do Panel. Senão, terá problemas na visualização.

    No caso de usar componentes de um form no outro. Poderia ser mais específica? Descreva o cenário / aplicação em que você está trabalhando. Assim podemos lhe ajudar melhor.


    Hudson Carvalho

    segunda-feira, 27 de março de 2017 02:21

Todas as Respostas

  • Olá,

    No seu caso, acredito que o problema está na separação dos componentes. Então, vou propor uma solução:

    1 - Crie um Form onde ficarão os botões de navegação (musica1, musica2, etc...) e o panel1 (que exibe os UserControls). A ideia é que esse Form controle a exibição dos UserControls de acordo com a ação do menu.
    2 - Então, ao clicar no botão do menu (música1, por exemplo), adicione a seguinte linha no evento click:

    panel1.Controls.Add(this.musica)

    3 - Lembre-se de criar os UserControls na mesma dimensão do Panel. Senão, terá problemas na visualização.

    No caso de usar componentes de um form no outro. Poderia ser mais específica? Descreva o cenário / aplicação em que você está trabalhando. Assim podemos lhe ajudar melhor.


    Hudson Carvalho

    segunda-feira, 27 de março de 2017 02:21
  • Obrigado pela resposta, mas não posso fazer desse jeito porque preciso que vários UserControls abram nesse painel principal sem ter um menu no form principal, por exemplo: existe um botão playlist, quando clicar nesse botão vai abrir várias músicas (primeiro UserControl) e se clicar no botão da música ira abrir um player (segundo UserControl). Entendeu? É como se uma coisa levasse a outra.
    terça-feira, 28 de março de 2017 01:57