@ Control

[Esta documentación se proporciona solo para fines preliminares y está sujeta a cambios en versiones posteriores. Se incluye temas en blanco como marcadores].

Define los atributos específicos de los controles de usuario (archivos .ascx) utilizados por el analizador y el compilador de páginas ASP.NET. Esta directiva sólo se puede utilizar con (cuyo código fuente se incluye en archivos .ascx). Para obtener más información acerca de los controles de usuario, vea ASP.NET User Controls.

<%@ Control attribute="value" [attribute="value" ... ] %>

Atributos

  • AutoEventWireup
    Indica si los eventos del control están autoconectados. Es true si está habilitada la autoconexión de eventos; en caso contrario, es false. De manera predeterminada, es true. Para obtener más información, vea ASP.NET Web Server Control Event Model.

  • ClassName
    Cadena que especifica el nombre de la clase del control que se compilará dinámicamente cuando el control se solicite. Este valor puede ser cualquier nombre de clase válido y puede incluir el espacio de nombres completo de una clase (un nombre de clase completo). Si no se especifica un valor para este atributo, el nombre de clase del control compilado se basa en el nombre de archivo del control.

    Otra página o control puede hacer referencia al nombre de clase asignado al control mediante la directiva @ Reference.

  • ClientIDMode
    Especifica el algoritmo que se utiliza para generar valores ClientID para los controles. El valor predeterminado para una página es AutoID.

    El valor predeterminado del control es Inherit. Por tanto, la configuración ClientID del control de usuario determina el algoritmo predeterminado para los controles de un control de usuario. Se puede establecer un valor predeterminado diferente en el nivel de página de la directiva @ Page o en el elemento pages del archivo Web.config. Para obtener más información sobre los algoritmos, vea ClientIDMode.

  • CodeBehind
    Especifica el nombre del archivo compilado que contiene la clase asociada al control. Este atributo no se usa en tiempo de ejecución.

    Nota

    Este atributo se incluye para asegurar la compatibilidad con las versiones anteriores de ASP.NET con el fin de implementar la característica de código subyacente.En ASP.NET 2.0, se ha de utilizar el atributo CodeFile para especificar el nombre del archivo de código fuente, junto con el atributo Inherits para especificar el nombre completo de la clase.

  • CodeFile
    Especifica una ruta de acceso al archivo de código subyacente al que se hace referencia para el control. Este atributo se utiliza junto con el atributo Inherits para asociar un archivo de código fuente subyacente a un control de usuario. El atributo sólo es válido para los controles compilados.

  • CodeFileBaseClass
    Especifica una ruta de acceso a una clase base para un control y su clase de código subyacente asociada. Este atributo es opcional pero cuando se utiliza, también debe estar presente el atributo CodeFile. Use este atributo cuando desee implementar un escenario compartido, en el que se definen campos comunes (y, opcionalmente, eventos asociados) en una clase base para hacer referencia a los controles declarados en un control de usuario. Debido al modelo de generación de código de ASP.NET, si se definen los campos de una clase base sin utilizar este atributo, en tiempo de compilación se generarán nuevas definiciones de miembros para los controles declarados en el control de usuario (dentro del código auxiliar de clase parcial independiente) y el escenario que desea no funcionará. Sin embargo, si utiliza el atributo CodeFileBaseClass para asociar la clase base al control de usuario y hace que la clase parcial herede de la clase base (su nombre se asigna al atributo Inherits y el atributo CodeFile hace referencia a su archivo de código fuente), los campos de la clase base podrán hacer referencia a los controles del control de usuario después de la generación del código.

  • CompilationMode
    Establece si se debería compilar el control, utilizando una cadena que especifica una de varias opciones enumeradas. El valor predeterminado es Always, por lo que los controles .aspx se compilan de forma predeterminada. Para obtener información detallada, vea la enumeración CompilationMode.

  • CompilerOptions
    Cadena que contiene las opciones del compilador que se utilizan para compilar el control. En C# y Visual Basic, se trata de una secuencia de modificadores de línea de comandos del compilador. Para obtener más información sobre las opciones del compilador, vea Opciones del compilador de C# o compilador de la línea de comandos de Visual Basic.

  • Debug
    Indica si el control debe compilarse con símbolos de depuración. Es true si el control debe compilarse con símbolos de depuración; de lo contrario, es false. Dado que este valor de configuración afecta al rendimiento, el valor del atributo sólo debe establecerse en true durante el desarrollo.

  • Description
    Proporciona texto que describe el control. El analizador de ASP.NET no tiene en cuenta este valor.

  • EnableTheming
    Indica si se usan temas en el control. Es true si se utilizan temas; en caso contrario, es false. De manera predeterminada, es true.

  • EnableViewState
    Indica si el estado de vista se mantiene en todas las solicitudes de controles. true si se mantiene estado de la vista; de lo contrario, es false. De manera predeterminada, es true.

  • Explicit
    Determina si el control está compilado utilizando el modo Option Explicit de Visual Basic. true indica que la opción de compilación explícita de Visual Basic está habilitada y que todas las variables deben declararse con una instrucción Dim, Private, Public o ReDim; en caso contrario, false. El valor predeterminado es false.

    Nota

    Los lenguajes que no sean Visual Basic omiten este atributo.Además, esta opción tiene el valor true en el archivo de configuración Machine.config.Para obtener más información, vea Archivos de configuración y ASP.NET Configuration Files.

  • Inherits
    Define una clase de código subyacente que el control hereda. Puede ser cualquier clase derivada de la clase UserControl. Se utiliza junto con el atributo CodeFile, que contiene la ruta de acceso al archivo de código fuente de la clase de código subyacente. Para obtener más información sobre las clases de código subyacente, vea ASP.NET Web Page Code Model.

  • Language
    Especifica el lenguaje utilizado al compilar todos los bloques de representación en línea (<% %> y <%= %>) y de declaraciones de código dentro del control. Los valores pueden representar cualquier lenguaje compatible con .NET Framework, incluidos Visual Basic, C# o JScript. Sólo se puede utilizar y especificar un lenguaje por control.

  • LinePragmas
    Determina si el motor en tiempo de ejecución debe generar directivas pragma de línea en el código fuente. Éstas son opciones del compilador que las herramientas de depuración utilizan a menudo para marcar determinadas ubicaciones en un archivo de código fuente. Es true si debe generarse líneas pragmas; en caso contrario, es false.

  • Src
    Especifica una ruta de acceso a un archivo de código fuente que contiene código que se vincula al control. En el archivo de código fuente vinculado, puede decidir incluir la lógica de programación del control en una clase o en bloques de declaraciones de código.

    Puede utilizar el atributo Src para vincular proveedores de compilación al control. Para obtener más información, vea la clase BuildProvider. Asimismo, en las versiones de ASP.NET anteriores a la versión 2.0, el atributo Src se utilizaba como alternativa a vincular un archivo de código subyacente a un control. En ASP.NET 2.0, el método preferido para vincular un archivo de código fuente subyacente a un control es utilizar el atributo Inherits para especificar una clase y el atributo CodeFile para especificar la ruta de acceso al archivo de código fuente de la clase.

  • Strict
    Indica que el control debe compilarse utilizando el modo OptionStrict de Visual Basic. Es true si Option Strict está habilitado; en caso contrario, es false. El valor predeterminado es false.

    Nota

    Los lenguajes que no sean Visual Basic omiten este atributo.

  • TargetSchema
    Especifica el nombre de un esquema que valida el contenido del control. Tiene sólo una finalidad descriptiva; en realidad, no se realiza ninguna validación y el analizador omite el atributo.

  • WarningLevel
    Indica el nivel de advertencia del compilador según el cual las advertencias se tratan como errores, anulando así la compilación del control. Los posibles niveles de advertencia van del 0 al 4. Para obtener más información, vea la propiedad WarningLevel.

Comentarios

Esta directiva sólo se puede utilizar en controles de usuario. Los controles de usuario se definen en los archivos con la extensión .ascx. Sólo se puede incluir una directiva @ Control por cada archivo .ascx. Además, sólo se puede definir un atributo Language por cada directiva @ Control, porque sólo se puede utilizar un lenguaje por control.

Nota

La directiva @ Control tiene varios atributos en común con otras directivas que se aplican a un archivo de código fuente completo, como la directiva @ Page (utilizada en los archivos .aspx para las páginas Web) y la directiva @ Master (utilizada en los archivos .master para las páginas maestras).

Si desea definir varios atributos para la directiva @ Control, separe cada par de atributo y valor con un solo espacio. Para un atributo específico, no incluya un espacio a ambos lados del signo de igualdad (=) que conecta el atributo con su valor. Para obtener un ejemplo, vea la sección Ejemplo de este tema.

Ejemplo

En el siguiente ejemplo de código se indica al compilador de páginas de ASP.NET que utilice Visual Basic como lenguaje de código en línea y se deshabilita la opción que guarda el estado de vista entre solicitudes HTTP mediante el atributo EnableViewState.

<%@ Control Language="VB" EnableViewState="false" %>

Vea también

Referencia

Sintaxis de directivas de plantilla de texto

@ Page

Otros recursos

Sintaxis de páginas de ASP.NET

ASP.NET User Controls