J'ai un projet dans WPF 4 et VB.NET. Je dois changer la couleur une seule lettre dans un mot dans une étiquette (le contenu de l'étiquette change un peu). Je ne suis vraiment pas sûr que cela soit possible, mais si c'est le cas, j'apprécierais de l'aide pour déterminer comment. TY! P>
4 Réponses :
Label est une commande de contenu afin que tout type de contenu soit autorisé à l'intérieur d'une étiquette.Vous pouvez facilement faire votre exigence par quelque chose comme
Je cherche à faire quelque chose de similaire et je me demande si cette technique fonctionnera et sera obligatoire. Par exemple, mettez en surbrillance toutes les lettres majuscules d'une chaîne dynamique telle que "gémismytextBlock". Est-ce que cela serait réalisable en utilisant cette approche?
Un moyen plus propre utiliserait les capacités de teneur en flux d'un textBlock: Cette limite se lie un peu cependant, si nécessaire. P> P>
C'est une meilleure solution si votre texte doit envelopper
Je viens de mettre en œuvre quelque chose comme celui-ci dans notre projet, ce sera statique mais je ne sais pas si c'est ce dont vous avez besoin. Vous pouvez modifier le contenu de l'étiquette aussi souvent que nécessaire, mais il aura toujours un rouge * à la fin. J'ai ajouté un style au projet comme celui-ci alors vous pouvez utiliser ce style sur une étiquette n'importe où dans votre projet. P> <Label Content="Enter Name:"
Style="{StaticResource RequiredFieldLabel}" />
La méthode la plus propre que j'ai trouvée jusqu'à présent utilise un texteeffect
:
<Label> <TextBlock Text="Search"> <TextBlock.TextEffects> <TextEffect PositionStart="0" PositionCount="1" Foreground="Red"/> </TextBlock.TextEffects> </TextBlock> </Label>