segunda-feira, fevereiro 27, 2012

Acessando um componente da Master Page no Asp.Net

HI,

Hoje precisei colocar um recurso em um site que fiz. Atualizar um item no menu que dá acesso a página de mensagens. Tinha que colocar ao lado do texto entre parenteses a quantidade de mensagens não lida.

A lógica que usei foi essa:


  1. Obter a quantidade mensagens não lidas ao fazer o login e colocar em uma variável de sessão.
  2. Colocar na Page_Load do Master Page um código para atualizar o item do menu: lblMenuMensagem.Text = "Mensagens (" + Session["QT_MSG"].ToString() + ")";
  3. Ao acessar uma mensagem, atualizar a variável de sessão e modificar o valor do menu: 
   Label mLabel;
            mLabel = (Label)Page.Master.FindControl("lblMenuMensagem");
            if (mLabel != null)
            {
Session[" QT_MSG "] = ObterQtMsgNaoLida();
                mLabel.Text = "Mensagens (" + Session["QT_MSG"].ToString() + ")";
                
            }

Esse código fica na Page_Load da página LerMensagem.aspx

Páginas que achei no google

Update Label in Master page from Content page. Help please

Passing Information Between Content and Master Pages


Fiquem na Paz!!!

Nenhum comentário: