Acessando métodos na MasterPage através de um UserControl

por Sérgio 28. maio 2010 15:27

Salve blogueiros!

 

 

Recentemente trabalhando num projeto novo para um de nossos clientes identifiquei uma necessidade que nunca havia me deparado anteriormente.

 

Usamos em quase todos os projetos MasterPages e como não poderia ser diferente neste também usamos.

 

O que acontece neste caso é que a MasterPage contém alguns componentes de tela que são manipulados através de métodos contidos na própria MasterPage.

 

O grande problema é que esses métodos teriam que ser chamados num botão que se encontra dentro de um UserControl que fica dentro da página ASPX.

 

A solução para isso é teoricamente simples, mas acreditem, não foi fácil chegar até ela.

Para resolver este problema é necessário fazer algumas coisinhas que serão descritas a seguir.

 

Primeiro de tudo, o método na MasterPage deve ser declarado como Public. Preste atenção ao Inherit de sua MasterPage, ex:

 

MasterPage.master

 

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterAdm.master.cs" Inherits="master_SuaMaster" %>

 

MasterPage.master.cs

 

public void nomeMetodo()

{

    // Faz Algo

}

 

Em seguida é necessário adicionar uma referência no UserControl, e fazer a chamada do método no .cs, ex:

 

UserControl.ascx

 

<%@ Reference VirtualPath="~/MasterPage.master" %>

 

UserControl.ascx.cs

 

((master_SuaMaster)Page.Master).nomeMetodo();

 

 

Espero ter ajudado, até a próxima galera!

Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Programação | Programação




Comentários

Comentar




  Country flag

biuquote
  • Comentário
  • Pré-visualização
Loading




Calendário

<<  fevereiro 2012  >>
seteququsedo
303112345
6789101112
13141516171819
20212223242526
2728291234
567891011

Ver os posts em um calendário maior

Oportunidades


Para divulgar oportunidades aqui, entre em contato conosco enviando a descrição completa da vaga + uma data de validade para cada uma delas.

* As vagas divulgadas neste espaço são de inteira responsabilidade das empresas anunciantes.

Assine Nossa Newsletter

Quero ser notificado quando um novo Post for publicado