Domanda

Attualmente sto migrando un'applicazione .net 1.1 su .net 3.5.

L'applicazione .net 1.1 ha un numero di numero di pagine + usercontrol che vorrei migrare alle pagine principali.

Il mio problema sta provando a testare in modo programmatico per vedere se il contenuto dei titolari di contenuti della pagina master è stato sovrascritto da una pagina figlio.

  1. È possibile?
  2. Qualcuno ha campioni o riferimenti che potrei dare un'occhiata?

Grazie in anticipo.

È stato utile?

Soluzione

Una pagina può comunicare con la pagina principale, ma non viceversa poiché il contenuto nel contentplaceholder non appartiene alla pagina principale. Il modo più rapido per impostare una pagina "registrazione" stesso alla pagina principale è dichiarare una classe che eredita da .NET MasterPage ed esporre funzionalità di comunicazione in quella classe.

classe astratta pubblica MyMaster: System.Web.UI.MasterPage {     public MyMaster () {}

public abstract void TellMeSomethingAboutTheContent(SomeArgs args);

}

Quindi nella tua pagina che utilizza il master puoi fare qualcosa del tipo:

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


    if (master == null)
        return;


    master.TellMeSomethingAboutTheContent(args);
}

Supponendo ovviamente che tu abbia una classe SomeArgs che contiene i dati che vuoi che la pagina principale conosca.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top