Control.ClientID Control.ClientID Control.ClientID Control.ClientID Property

Definición

Obtiene el id. de control para marcado HTML que se genera por ASP.NET.Gets the control ID for HTML markup that is generated by ASP.NET.

public:
 virtual property System::String ^ ClientID { System::String ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual string ClientID { get; }
member this.ClientID : string
Public Overridable ReadOnly Property ClientID As String

Valor de propiedad

Id. de control para marcado HTML que se genera por ASP.NET.The control ID for HTML markup that is generated by ASP.NET.

Ejemplos

Los ejemplos siguientes muestran un control de usuario Web que está dentro de una página de contenido de una página maestra.The following examples show a Web user control that is inside a content page for a master page. El control de usuario contiene un DropDownList control y un Label control.The user control contains a DropDownList control and a Label control. El texto que se muestra en el Label control viene determinada por el valor que el usuario selecciona en el DropDownList control.The text that is displayed in the Label control is determined by the value that the user selects from the DropDownList control. El valor de texto se establece a través de script de cliente para que la página Web no tiene que registrar al servidor con el fin de establecer este valor.The text value is set through client script so that the Web page does not have to post back to the server in order to set this value. Para obtener una referencia al elemento HTML que se represente para el Label control en el script de cliente, debe conocer el valor del control ClientID propiedad.To get a reference to the HTML element that is rendered for the Label control in client script, you must know the value of the control's ClientID property. Sin embargo, dado que el control de usuario se puede colocar en cualquier lugar en una página Web, es imposible saber de antemano qué contenedores de nomenclatura contendrá los controles.However, because the user control can be put anywhere in a Web page, it is impossible to know in advance which naming containers will contain the controls. Para asegurarse de que el ClientID valor será el mismo que el ID valor, el código establece la ClientIDMode valor Static.To make sure that the ClientID value will be the same as the ID value, the code sets the ClientIDMode value to Static.

El ejemplo siguiente muestra el control de usuario.The following example shows the user control.

El ejemplo siguiente muestra la página de contenido que contiene el control de usuario.The following example shows the content page that contains the user control.

El ejemplo siguiente muestra la página principal que contiene la página de contenido.The following example shows the master page that contains the content page.

Comentarios

Cuando un control de servidor Web se representa como un elemento HTML, el id atributo del elemento HTML se establece en el valor de la ClientID propiedad.When a Web server control is rendered as an HTML element, the id attribute of the HTML element is set to the value of the ClientID property. El ClientID valor a menudo se usa para tener acceso al elemento HTML en el script de cliente mediante el uso de la document.getElementById método.The ClientID value is often used to access the HTML element in client script by using the document.getElementById method. El identificador también a menudo se usa en las reglas de CSS para especificar los elementos de estilo.The ID is also often used in CSS rules to specify elements to style. Por ejemplo, la siguiente regla de estilo CSS selecciona todos los span los elementos que tienen el id valor del atributo ProductIDLabel y establece su background-color atributo white:For example, the following CSS style rule selects all span elements that have the id attribute value of ProductIDLabel and sets their background-color attribute to white:

span#ProductIDLabel { background-color: white; }  

ASP.NET proporciona varios algoritmos generar el ClientID valor de propiedad.ASP.NET provides multiple algorithms for how to generate the ClientID property value. Seleccione el algoritmo a utilizar para un control estableciendo su ClientIDMode propiedad.You select which algorithm to use for a control by setting its ClientIDMode property. Los algoritmos se identifican mediante el ClientIDMode valores de enumeración que se muestran en la tabla siguiente.The algorithms are identified by the ClientIDMode enumeration values that are listed in the following table.

ValorValue DescripciónDescription
AutoID El valor ClientID se genera mediante la concatenación de los valores ID de cada contenedor de nomenclatura primario con el valor ID del control.The ClientID value is generated by concatenating the ID values of each parent naming container with the ID value of the control. En escenarios de enlace de datos donde se presentan varias instancias de un control, se inserta un valor de incremento delante del valor ID del control.In data-binding scenarios where multiple instances of a control are rendered, an incrementing value is inserted in front of the control's ID value. Un carácter de subrayado () separa cada segmento.Each segment is separated by an underscore character (). Este algoritmo se utilizó en versiones de ASP.NET anteriores a ASP.NET 4.This algorithm was used in versions of ASP.NET earlier than ASP.NET 4.
Static El valor de ClientID se establece en el valor de la propiedad ID.The ClientID value is set to the value of the ID property. Si el control es un contenedor de nomenclatura, se utiliza como la parte superior de la jerarquía de contenedores de nomenclatura para cualquier control que contenga.If the control is a naming container, the control is used as the top of the hierarchy of naming containers for any controls that it contains.
Predictable Este algoritmo se utiliza para los controles que están en controles enlazados a datos.This algorithm is used for controls that are in data-bound controls. El valor ClientID se genera mediante la concatenación del valor ClientID del contenedor de nomenclatura primario con el valor ID del control.The ClientID value is generated by concatenating the ClientID value of the parent naming container with the ID value of the control. Si se trata de un control enlazado a datos que genera varias filas, el valor del campo de datos especificado en la propiedad ClientIDRowSuffix se agrega al final.If the control is a data-bound control that generates multiple rows, the value of the data field specified in the ClientIDRowSuffix property is added at the end. En el caso del control GridView se pueden especificar varios campos de datos.For the GridView control, multiple data fields can be specified. Si el ClientIDRowSuffix propiedad está en blanco, se agrega un número secuencial al final en lugar de un valor de campo de datos.If the ClientIDRowSuffix property is blank, a sequential number is added at the end instead of a data-field value. Un carácter de subrayado () separa cada segmento.Each segment is separated by an underscore character ().
Inherit El control hereda la configuración de ClientIDMode de este control NamingContainer.The control inherits the ClientIDMode setting of its NamingContainer control.

El valor predeterminado de ClientIDMode para una página es Predictable.The default value of ClientIDMode for a page is Predictable. El valor predeterminado de ClientIDMode para un control es Inherit.The default value of ClientIDMode for a control is Inherit. Dado que es el valor predeterminado para los controles Inherit, la generación predeterminada es el modo Predictable.Because the default for controls is Inherit, the default generation mode is Predictable. (Sin embargo, si usa Visual Studio para convertir un proyecto Web en ASP.NET 4 desde una versión anterior, Visual Studio establece automáticamente el valor predeterminado de sitio en AutoID en el archivo Web.config.)(However, if you use Visual Studio to convert a Web project to ASP.NET 4 from an earlier version, Visual Studio automatically sets the site default to AutoID in the Web.config file.)

Para obtener más información, vea Identificación de controles de formularios Web Forms.For more information, see ASP.NET Web Server Control Identification.

Se aplica a

Consulte también: