Comment mettre en forme un texte dans un TextBlock
contrôle dans mon application WPF?
Par exemple: je voudrais avoir certains mots en gras, d'autres en italique et certains dans des couleurs différentes, comme cet exemple:
La raison derrière ma question est ce problème réel:
lblcolorfrom.Content = "Colour From: " + colourChange.ElementAt(3).Value.ToUpper();
Je voudrais que la deuxième partie de la chaîne soit en gras, et je sais que je pourrais utiliser deux contrôles (Labels, TextBlocks, etc.) mais je préfère ne pas le faire, en raison de la grande quantité de contrôles déjà utilisés.
c#
wpf
wpf-controls
Cendre
la source
la source
Il existe différents
Inline
éléments qui peuvent vous aider, pour les options de formatage les plus simples que vous pouvez utiliserBold
,Italic
etUnderline
:Je pense qu'il vaut la peine de noter que ces éléments ne sont en fait que des raccourcis pour les
Span
éléments avec diverses propriétés définies (c'est-à-dire: pourBold
, laFontWeight
propriété est définie surFontWeights.Bold
).Cela nous amène à notre prochaine option: l'
Span
élément susmentionné .Vous pouvez obtenir les mêmes effets avec cet élément que ci-dessus, mais vous avez encore plus de possibilités; vous pouvez définir (entre autres) la
Foreground
ou lesBackground
propriétés:L'
Span
élément peut également contenir d'autres éléments comme celui-ci:Il y a un autre élément, qui est assez similaire à
Span
, il s'appelleRun
. LeRun
ne peut pas contenir d'autres éléments en ligne tandis que leSpan
can, mais vous pouvez facilement lier une variable à la propriétéRun
'sText
:En outre, vous pouvez faire tout le formatage à partir du code-behind si vous préférez:
la source
Consultez cet exemple de Charles Petzolds Bool Application = Code + markup
la source
un bon site, avec de bonnes explications:
http://www.wpf-tutorial.com/basic-controls/the-textblock-control-inline-formatting/
ici l'auteur vous donne de bons exemples de ce que vous recherchez! Dans l'ensemble, le site est idéal pour le matériel de recherche et couvre de nombreuses options que vous avez dans WPF
Éditer
Il existe différentes méthodes pour formater le texte. pour un formatage basique (le plus simple à mon avis):
L'exemple 1 montre la mise en forme de base avec du texte gras et souligné.
Voici la méthode SPAN, avec laquelle vous pouvez mettre en évidence le texte:
L'exemple 2 montre la fonction span et ses différentes possibilités.
Pour une explication détaillée, consultez le site!
Exemples
la source
C'est ma solution ...
J'apprends ... donc si quelqu'un a des doutes sur la solution ci-dessus, veuillez partager! :)
la source