2011-12-08 20 views
5

Ambos Page_PreRender y Page_Load no funcionan en la página maestra con la que estoy trabajando. Page_Init, sin embargo, por cualquier motivo. AutoEventWireup está establecido en verdadero.PreRender en ASP.NET Página maestra que no se activa

public partial class MyMaster : MasterPage 
{ 
    public MyMaster() 
    { 
     // tried this too, but doesn't matter whether this LoC 
     // is there or not 
     this.PreRender += Page_PreRender; 
    } 

    protected void Page_PreRender(object sender, EventArgs e) 
    { 
     // does not fire 
    } 
} 

Lo probé en un proyecto web vacío también. Ahí funciona bien.

Editar: me di cuenta de que la fijación de EnableViewState a true lo fija:

<%@ Master Language="C#" MasterPageFile="~/MainMaster.master" AutoEventWireup="true" 
    CodeBehind="MyMaster.master.cs" Inherits="MyMaster" EnableViewState="false" %> 

Pero yo no quiero que el ViewState esté habilitado. Ignorar OnPreRender funciona también, sin importar el valor EnableViewState. Ahora me pregunto por qué, y solo usar la forma de anulación me parece un poco raro. ¿Alguien puede ayudar?

+0

¿Por qué esperas que el método Pool se llame dentro de la clase myMaster? –

+0

Disculpe, este es el constructor. Copiar + pegar: falla al copiar el código de varias ventanas en la publicación. –

+1

¿llama a una página que hace referencia a su página maestra? – slfan

Respuesta

-1

Es mejor utilizar AutoEventWireup en la directiva de página, por lo tanto, le solicito tratar como a continuación:

En su directiva de página <%@ Page ..., utilice AutoEventWireup="true" y en su página principal, retire PreRender evento de suscripción:

public MyMaster() 
{ 
    // tried this too, but doesn't matter whether this LoC 
    // is there or not 
    //this.PreRender += Page_PreRender; 
} 

Espero que todo esté bien ahora, gracias por su tiempo.

Editar: Por favor marque en su archivo web.config y asegurar que AutoEventWireup no se ajusta a False.

+0

Gracias a ti Elias. Lamentablemente todavía no es. Comprobé mi código y todo es como sugirió. –

+0

Esto no tiene sentido @Mudu, deberías probarlo primero y deberías avisarme, gracias por tu tiempo. –

+0

Debemos habernos malentendido unos a otros. De hecho, intenté con lo que escribiste, pero no está funcionando. Además, no voté por su respuesta, en caso de que se sienta ofendido. –

Cuestiones relacionadas