Pergunta

Atualmente estou migrando um 1.1 aplicativo .net para .net 3.5.

O aplicativo .NET 1.1 tem um número de número de página + UserControl do que eu gostaria migraram para masterpages.

Meu problema está tentando testar progmatically para ver se o conteúdo ContentPlaceHolders do masterpage foi substituído por uma página filha.

  1. É possível?
  2. Alguém tem amostras ou referências que eu poderia tomar uma olhada?

Obrigado antecipadamente.

Foi útil?

Solução

A página pode se comunicar com a página mestra, mas não vice-versa, desde o conteúdo no contentplaceholder não pertence à página mestre. A maneira mais rápida de criar uma página de "registrar"-se à página mestra é declarar uma classe que herda da NET MasterPage e expor a funcionalidade de comunicação nessa classe.

classe MyMaster abstrato público: System.Web.UI.MasterPage { MyMaster pública () {}

public abstract void TellMeSomethingAboutTheContent(SomeArgs args);

}

Então, em sua página que usa o mestre que você pode fazer algo como:

protected void Page_Load(object sender, EventArgs e) 
{ 
    MyMaster master = Page.Master as MyMaster;


    if (master == null)
        return;


    master.TellMeSomethingAboutTheContent(args);
}

Supondo, claro, que você tem uma classe SomeArgs que contém os dados que você quer a página principal de conhecer.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top