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:
- Obter a quantidade mensagens não lidas ao fazer o login e colocar em uma variável de sessão.
- Colocar na Page_Load do Master Page um código para atualizar o item do menu: lblMenuMensagem.Text = "Mensagens (" + Session["QT_MSG"].ToString() + ")";
- 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!!!