Información sobre el atributo AutoEventWireup

Resumen

Este artículo describe el atributo AutoEventWireup :
  • AutoEventWireup es un atributo booleano que indica si los eventos de una página de formularios Web Forms están autoconectados.
  • El valor predeterminado de
    AutoEventWireup es TRUE y se puede establecer como sigue:
    • TRUE si la autoconexión de eventos está activado.
    • FALSE cuando no se activa la autoconexión de eventos.

Más información

En Visual Studio .NET o en Visual Studio 2005, los eventos se enlazan a los métodos de controlador de eventos mediante delegados de eventos. Si utiliza el Diseñador de Web Forms al diseño de formularios Web Forms, el diseñador genera automáticamente código para enlazar eventos a sus métodos de controlador de eventos.

En Visual Basic .NET o en Visual Basic 2005, el diseñador realiza este enlace utilizando la palabra clave Handles en la declaración del método controlador de eventos.

El código de ejemplo siguiente ilustra la de palabra clave Handles en Visual Basic .NET o Visual Basic 2005:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
En Visual C#. NET, el diseñador genera a un delegado de eventos explícito:
this.Load += new System.EventHandler(this.Page_Load);
El marco de trabajo de página ASP.NET admite un mecanismo alternativo que utiliza el atributo AutoEventWireup de una página de formularios Web Forms para asociar automáticamente los eventos de página y los métodos de controlador de eventos. Si el
Atributo AutoEventWireup de la directiva @ Page se establece en TRUE (o si no se especifica porque su valor predeterminado es TRUE), el marco de trabajo de página ASP.NET llama automáticamente a los métodos de controlador de eventos de página.

Por ejemplo, los métodos de controlador de eventos Page_Init y Page_Load se llaman explícitamente por el marco de trabajo de página ASP.NET, sin utilizar la palabra clave Handles o un delegado de eventos explícito.

Sin embargo, el inconveniente de utilizar el atributo AutoEventWireup para asociar automáticamente los eventos de página y sus métodos de controlador de eventos es que los métodos de controlador de eventos deben tener nombres estándares predefinidos. Esto limita cómo puede asignar un nombre a los métodos de controlador de eventos.

Visual Studio .NET y Visual Studio 2005 no tienen la misma limitación en los nombres de método. En Visual Studio .NET y Visual Studio 2005, la configuración predeterminada para AutoEventWireup es FALSE. Además, el diseñador utiliza siempre la palabra clave Handles o un delegado de eventos explícito para enlazar eventos a sus métodos de controlador de eventos. Como resultado, puede utilizar nombres no estándar para los métodos de controlador de eventos.

Conclusión

Cuando AutoEventWireup se establece explícitamente en TRUE, Visual Studio .NET o Visual Studio 2005, de forma predeterminada, genera código para enlazar eventos a sus métodos de controlador de eventos. Al mismo tiempo, el marco de trabajo de página ASP.NET llama automáticamente a los métodos de controlador de eventos basados en sus nombres predefinidos. Esto puede provocar el mismo método de controlador de eventos se llama dos veces cuando se ejecuta la página. Por lo tanto, Microsoft recomienda que siempre establezca AutoEventWireup en FALSE mientras trabaja en Visual Studio .NET.

Referencias

Para obtener más información, visite los siguientes sitios Web de MSDN:
Modelo de eventos de Control de servidor ASP.NET
http://msdn2.microsoft.com/en-us/library/59t350k3(vs.71).aspx
Nº de error: 2986 (Mantenimiento de contenido)
Propiedades

Id. de artículo: 814745 - Última revisión: 17 ene. 2017 - Revisión: 1

Comentarios