96 votes

Newline dans une étiquette WPF ?

Comment puis-je ajouter un saut de ligne dans le texte d'une étiquette dans WPF, comme dans l'exemple suivant ?

<Label>Lorem 
  ipsum</Label>

126voto

Szymon Rozga Points 11277
<Label><TextBlock>Lorem<LineBreak/>ipsum</TextBlock></Label>

Vous devez utiliser TextBlock parce que ce dernier accepte comme enfants une collection d'objets Inline. Vous donnez donc à l'élément TextBlock trois objets Inline : Run Text="Lorem", LineBreak, et Run Text="ipsum".

Vous ne pouvez pas le faire : <Label>Lorem<LineBreak/>ipsum</Label> car Label accepte un élément enfant Content.

Edit : Je ne sais pas exactement quel est votre cas d'utilisation, mais vous avez remarqué que j'ai placé un bloc de texte à l'intérieur de votre élément Label. Est-ce répétitif ? Pas vraiment, cela dépend de vos besoins. Voici un bon article sur les différences entre les deux éléments : Différence entre Label et TextBlock

125voto

00jt Points 214

Si vous voulez une nouvelle ligne dans une étiquette :

<Label Content="Lorem &#10;ipsum" />

("10" est le numéro ascii pour la nouvelle ligne)

ou

<Label Content="Lorem &#xA;ipsum" />

("A" est le numéro ascii de la nouvelle ligne en hexadécimal)

Example, with a border arround label to show boundry

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X