Control.ClientID Proprietà

Definizione

Ottiene l'ID di controllo per il markup HTML generato da 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

Valore della proprietà

ID di controllo per il markup HTML generato da ASP.NET.The control ID for HTML markup that is generated by ASP.NET.

Attributi

Esempi

Gli esempi seguenti mostrano un controllo utente Web che si trova all'interno di una pagina di contenuto per una pagina master.The following examples show a Web user control that is inside a content page for a master page. Il controllo utente contiene un controllo DropDownList e un controllo Label.The user control contains a DropDownList control and a Label control. Il testo visualizzato nel controllo Label è determinato dal valore selezionato dall'utente dal controllo DropDownList.The text that is displayed in the Label control is determined by the value that the user selects from the DropDownList control. Il valore di testo viene impostato tramite lo script client, in modo che la pagina Web non debba eseguire il postback al server per impostare questo valore.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. Per ottenere un riferimento all'elemento HTML di cui viene eseguito il rendering per il controllo Label nello script client, è necessario essere a conoscenza del valore della proprietà ClientID del controllo.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. Tuttavia, poiché il controllo utente può essere inserito in un punto qualsiasi di una pagina Web, è impossibile capire in anticipo quali contenitori di denominazione conterranno i controlli.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. Per assicurarsi che il valore di ClientID sia uguale al valore di ID, il codice imposta il valore di ClientIDMode su Static.To make sure that the ClientID value will be the same as the ID value, the code sets the ClientIDMode value to Static.

Nell'esempio seguente viene illustrato il controllo utente.The following example shows the user control.

Nell'esempio seguente viene illustrata la pagina contenuto che contiene il controllo utente.The following example shows the content page that contains the user control.

Nell'esempio seguente viene illustrata la pagina master che contiene la pagina contenuto.The following example shows the master page that contains the content page.

Commenti

Quando viene eseguito il rendering di un controllo server Web come elemento HTML, l'attributo id dell'elemento HTML viene impostato sul valore della proprietà ClientID.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. Il valore ClientID viene spesso usato per accedere all'elemento HTML nello script client usando il metodo document.getElementById.The ClientID value is often used to access the HTML element in client script by using the document.getElementById method. L'ID viene spesso usato nelle regole CSS per specificare gli elementi per lo stile.The ID is also often used in CSS rules to specify elements to style. Ad esempio, la regola di stile CSS seguente seleziona tutti gli elementi di span con il valore dell'attributo id ProductIDLabel e imposta il relativo attributo background-color su 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 fornisce più algoritmi per la generazione del valore della proprietà ClientID.ASP.NET provides multiple algorithms for how to generate the ClientID property value. È possibile selezionare l'algoritmo da utilizzare per un controllo impostando la relativa proprietà ClientIDMode.You select which algorithm to use for a control by setting its ClientIDMode property. Gli algoritmi sono identificati dai valori di enumerazione ClientIDMode elencati nella tabella seguente.The algorithms are identified by the ClientIDMode enumeration values that are listed in the following table.

ValueValue DescriptionDescription
AutoID Il valore ClientID viene generato tramite la concatenazione dei valori ID di ogni contenitore di denominazione padre con il valore ID del controllo.The ClientID value is generated by concatenating the ID values of each parent naming container with the ID value of the control. In scenari di associazione a dati in cui viene eseguito il rendering di più istanze di un controllo, viene inserito un valore incrementale davanti al valore ID del controllo.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. Ogni segmento è separato da un carattere di sottolineatura ().Each segment is separated by an underscore character (). Questo algoritmo è stato usato nelle versioni di ASP.NET precedenti a ASP.NET 4.This algorithm was used in versions of ASP.NET earlier than ASP.NET 4.
Static Il valore ClientID è impostato sul valore della proprietà ID.The ClientID value is set to the value of the ID property. Se il controllo è un contenitore di denominazione, il controllo viene utilizzato come elemento principale della gerarchia di contenitori di denominazione per qualsiasi controllo contenuto.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 Questo algoritmo viene utilizzato per controlli inclusi in controlli associati a dati.This algorithm is used for controls that are in data-bound controls. Il valore ClientID viene generato tramite la concatenazione del valore ClientID del contenitore di denominazione padre con il valore ID del controllo.The ClientID value is generated by concatenating the ClientID value of the parent naming container with the ID value of the control. Se il controllo è un controllo associato a dati che genera più righe, il valore del campo dati specificato nella proprietà ClientIDRowSuffix viene aggiunto alla fine.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. Per il controllo GridView, è possibile specificare più campi dati.For the GridView control, multiple data fields can be specified. Se la proprietà ClientIDRowSuffix è vuota, alla fine viene aggiunto un numero sequenziale anziché un valore di campo dati.If the ClientIDRowSuffix property is blank, a sequential number is added at the end instead of a data-field value. Ogni segmento è separato da un carattere di sottolineatura ().Each segment is separated by an underscore character ().
Inherit Il controllo eredita l'impostazione ClientIDMode del relativo controllo NamingContainer.The control inherits the ClientIDMode setting of its NamingContainer control.

Il valore predefinito di ClientIDMode per una pagina è Predictable.The default value of ClientIDMode for a page is Predictable. Il valore predefinito di ClientIDMode per un controllo è Inherit.The default value of ClientIDMode for a control is Inherit. Poiché il valore predefinito per i controlli è Inherit, la modalità di generazione predefinita è Predictable.Because the default for controls is Inherit, the default generation mode is Predictable. Tuttavia, se si usa Visual Studio per convertire un progetto Web in ASP.NET 4 da una versione precedente, Visual Studio imposta automaticamente il sito predefinito su AutoID nel file 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.)

Per altre informazioni, vedere ASP.NET Web Server Control Identification (Identificazione del controllo server Web ASP.NET).For more information, see ASP.NET Web Server Control Identification.

Si applica a

Vedi anche