Modificando um componente de uma MasterPage Asp.Net C# (CSharp)

Modificar um componente de uma MasterPage, uma necessidade comum quando trabalhamos com páginas dinâmicas com uso em diversas rotinas Asp.Net C# (CSharp).


Autor : Antonio Carlos Ferreira de Azevedo
Postado em : 26/10/2015


Vamos supor que em nossa MasterPage tenhamos uma label título que deve ser alterada dependendo da página carregada, um clássico exemplo é o caso de usarmos a mesma MasterPage para Cadastrar e Alterar um determinado registro.

Para podermos acessar os parâmetros de uma MasterPage você deve adicionar a variável MasterType na página que esta chamando a MasterPage com o link da MasterPage conforme abaixo

<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="teste.aspx.cs" Inherits="Recepcao.teste" %>
<%@ MasterType VirtualPath="~/Site1.master" %>  


Na MasterPage criar uma função publica que modifica o que desejamos, neste exemplo estamos modificando uma label.

public void GravaRotulo(string Rotulo)
  {
     lb_Rotulo.Text = Rotulo;  // Label de nossa Master Page
  }


Em nossa página acessamos a rotina publica da MasterPage alterando a label de lb_Rotulo de nossa MasterPage.

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        Master.GravaRotulo("Cadastrar Visitantes");
    }
 }


Com este procedimento você pode alterar qualquer componente de sua MasterPage.


Comentários