Comment utiliser le <label> tag ASP.NET?

Comment puis-je utiliser le <label> balise à l'intérieur d'un ASP.NET application? Je veux qu'il soit valide, accessible et utilisable.

Je comprends optimale HTML façon de le faire:

<label for="Username">Username:</label>
<input type="text" id="Username" runat="server" />

Mais si le code ci-dessus est dans un ASP.NET de contrôle de l'utilisateur, l'ID d'entrée va changer, le sens de l'étiquette de "pour" attribut est inutile. J'ai pu faire la balise d'étiquette d'un serveur de contrôle et de définir sa "pour" attribut dans le code (Username.ClientID), mais il semble que beaucoup de travail pour une chose si simple.

J'ai aussi vu de ce code HTML utilisé dans le passé:

<label>
    <span>Username</span>
    <input type="text" id="Username" runat="server" />
</label>

Quelle est la bonne approche?

InformationsquelleAutor Alex York | 2009-01-29