ASP.Net: Littéral vs Étiquette
Je voulais juste entendre certaines autorités sur quand et où vous devez utiliser un LITERAL
le contrôle d'une LABEL
.
Si je comprends bien, la différence est celle-ci: Une LABEL
peut être appelée via la <SPAN>
balises qui sont ajoutés.
Personnellement, je trouve l'ajout de <SPAN>
balises dans mon code HTML est très ennuyeux et n'a en fait jamais appliquer des styles à travers ASP, et ainsi de LITERAL
s semblent être ce qui doit être utilisé la plupart du temps... mais je suis concerné, il n'y a autres des considérations ou des avantages à l'aide d'une ÉTIQUETTE sur elle que je suis pas au courant de.
Est-il 100% amende de remplacer tout LABEL
s avec LITERAL
s, à condition que nous ne sommes pas appliquer des styles à eux? Il n'y a PAS d'autres considérations?
Vous devez vous connecter pour publier un commentaire.
Yep, la principale différence est que
Literal
commandes juste pour le rendu de texte, maisLabel
contrôles de l'entourent avec<span>
balises (Sauf si vous utilisez leAssociatedControlID
biens, auquel cas unLabel
contrôle rendra un<label>
tag).Donc, les étiquettes peuvent être style plus facile, mais si vous êtes juste de l'insertion de texte, les littéraux sont la voie à suivre. Littérale des contrôles ont également une pratique de la propriété
Mode
qui régit la façon dont le texte est traduit. Vous pouvez l'avoir codé en HTML, ou généré sans modifications, ou en cas de "non prise en charge de balisage-les éléments de langage" a été supprimé.Si vous n'avez pas l'application de tous les styles (par exemple en utilisant
Label
'sCssClass
de la propriété), il sera parfait pour remplacerLabel
contrôles avecLiteral
contrôles.Label
contrôle doit toujours être utilisé lorsque vous souhaitez un HTML<label>
élément. En dehors de cela, les Étiquettes de rendre le texte entre<spans>
, les Littéraux ne sont pas, et les Littéraux de vous donner un plus grand contrôle sur la façon dont le texte est traduit. Il n'y a pas d'événements spéciaux sur le contrôle, et leur contenu peut être consulté dans le code-behind exactement de la même manière (par le biais de laText
de la propriété).Label
contrôles, vous pouvez ajouter leAssociatedControlID
attribut avec l'ID de la case à cocher ou un bouton de radio que l'étiquette est associée. De cette façon, vous pouvez cliquer sur l'étiquette, et le contrôle sera activé. Rendre cliquable cible de la zone de plus grand sera également rendre l'interface utilisateur plus facile à utiliser.Lorsque vous avez un code similaire à
Il est optimal pour l'utilisation d'une étiquette élément parce qu'il sera correctement le transformer en html
label
élément avec le bonfor
attribut de ciblage de votre zone de texte, de sorte que si un utilisateur clique sur l'étiquette, il met automatiquement le curseur dans le champ texte.Utiliser autrement le littéral à moins d'avoir le texte enveloppé dans un
span
serait bénéfique pour le style css.Pour afficher du texte simple, texte au format HTML ou texte tel qu'il est, je vais commencer avec littérale d'abord comme elle est légère et n'émettent pas d'ajouter des balises SPAN.
Voir cette vidéo qui montre ces balises supplémentaires.
Mais nous ne pouvons pas appliquer le style CSS sur un littéral , nous ne pouvons pas ajouter des attributs comme Label1.Les attributs.Ajouter un littéral. Tout conteneur orienté choses ne peuvent pas être atteints littérale n'est pas entouré par une balise SPAN.
C'est aussi triste de voir que beaucoup de ASP.NET Webform gars par défaut, choisissez l'étiquette pour afficher le texte ne sachant pas que cela génère supplémentaire SPAN balises qui peuvent rendre votre HTML lourd si vous avez beaucoup de l'étiquette.
Différence b/w Label et Littérale de Contrôle dans asp.net
Dans presque tous les moyens un Littéral de contrôle est le même qu'un contrôle Label. Deux de ces contrôles sont utilisés pour afficher du Texte sur un formulaire en ligne. (Le Texte de la propriété peut être définie dans le code HTML ou dans le code-behind.)
La plus grande différence est que l'Étiquette de contrôle ajuste le texte dans un
span
lors du rendu. Chaque style est appliqué à l'Étiquette de contrôle, seront rendus à l'aide de lastyle
propriété de laspan
.Par exemple, le code HTML suivant
Sera rendu comme
<span id="Label1" style="color:Red;font-weight:bold;">Label Text</span>
Un Littéral de contrôle n'est pas sortie les balises, donc le Texte est affiché comme tel:
Par exemple, le code HTML suivant
sera rendu comme
Literal Control Text
Donc, si vous voulez appliquer des styles à un que l'utilisation de l'Étiquette de contrôle de l'utiliser autrement le Littérale de contrôle. De ce fait, la traduction Littérale de contrôle est un peu le contrôle du poids, en comparaison avec le contrôle Label.
FYI: La hiérarchie d'héritage pour Littérale de la classe de contrôle est (Objet => Contrôle => Littérale), où, comme pour le contrôle Label, la hiérarchie est (Objet => Contrôle => WebControl=> Label)
mode="PassThrough"
: techrepublic.com/blog/software-engineer/...