none
Subtítulo em página herdada da master RRS feed

  • Pergunta

  • Tenho uma master page, com um título que vai em todas as páginas, tipo: Emissão de Ordem de Serviços
    Agora nas páginas herdadas, como eu faço para colocar um subtítulo em baixo do título principal? Veja, esse subtítulo não poder na Master, porque cada página herdada terá seu próprio, tipo: Se o formulário for de Cadastro de Cliente, então o subtítulo que estará em baixo do título da master será: Cadastro de Cliente e assim para todas as demais.
    quarta-feira, 12 de junho de 2013 17:45

Respostas

  • Olá,

    Acredito que a melhor forma seria:

    - Criar uma Label para o Subtitulo, dispondo-a de acordo com o Layout desejado.

    - Definir a Label de subtitulo com Visible false;

    - Criar na Master Page um método público para alterar a Label do subtítulo e torná-la visível (conforme exemplo a seguir);

    - Chamar no Page Load das páginas herdadas o método de alterar Label da Master passando o subtítulo apropriado (conforme exemplo a seguir). 

    //Master Page
    public void AlteraSubtitulo(string subtitulo)
    {
         lblSubtitulo.Text = subtitulo;
    lblSubtitulo.Visible = true; } //Pagina herdada ((CastParaSuaMasterPage)this.Master).AlteraSubtitulo("Subtitulo Alterado");


    Diego Cotini do Couto - MCTS .NET Framework 3.5, ASP.NET Applications

    • Marcado como Resposta pnet quinta-feira, 13 de junho de 2013 11:53
    quarta-feira, 12 de junho de 2013 22:16

Todas as Respostas

  • Olá,

    Acredito que a melhor forma seria:

    - Criar uma Label para o Subtitulo, dispondo-a de acordo com o Layout desejado.

    - Definir a Label de subtitulo com Visible false;

    - Criar na Master Page um método público para alterar a Label do subtítulo e torná-la visível (conforme exemplo a seguir);

    - Chamar no Page Load das páginas herdadas o método de alterar Label da Master passando o subtítulo apropriado (conforme exemplo a seguir). 

    //Master Page
    public void AlteraSubtitulo(string subtitulo)
    {
         lblSubtitulo.Text = subtitulo;
    lblSubtitulo.Visible = true; } //Pagina herdada ((CastParaSuaMasterPage)this.Master).AlteraSubtitulo("Subtitulo Alterado");


    Diego Cotini do Couto - MCTS .NET Framework 3.5, ASP.NET Applications

    • Marcado como Resposta pnet quinta-feira, 13 de junho de 2013 11:53
    quarta-feira, 12 de junho de 2013 22:16
  • Estou com dificuldade de fazer esse cast. Uso a própria Master Page padrão(Site.Master). Tentei dessa forma: ((Site.Master)this.Master).MeuMetod() e não deu certo. Aí troquei os nomes, coloquei a página herdada e nada, tudo da erro.
    quinta-feira, 13 de junho de 2013 10:26
  • Resolvi. Apesar de aparece o nome de Site.Master, mas o nome da classe é SiteMaster. Alterei e resolveu.
    quinta-feira, 13 de junho de 2013 11:53
  • Resolvi. Apesar de aparece o nome de Site.Master, mas o nome da classe é SiteMaster. Alterei e resolveu.

    Exatamente, tem que utilizar o nome da classe para fazer o cast.

    Legal que tenha resolvido!


    Diego Cotini do Couto - MCTS .NET Framework 3.5, ASP.NET Applications

    quinta-feira, 13 de junho de 2013 13:15