I have a line of text in a textblock that reads:
"Detected [gesture] with an accuracy of [accuracy]"
In WPF, is it possible for me to be able to change the color of the elements within a textblock? Can I have a textblock be multiple colors? For example, I would like the whole TextBlock to be black except the gesture name, which I would like to be red.
Is this possible in WPF?
See if this helps:
<TextBlock>
Detected
<TextBlock Text="{Binding Gesture}" Foreground="Red" />
with an accuracy of
<TextBlock Text="{Binding Accuracy}" />
</TextBlock>
I think what you mean is like this( not styling for textblock):
<TextBlock FontSize="25" >
<Run Text="Detected [" Foreground="Red"/><Run Text="gesture" Foreground="Gray"/>
<Run Text="] with an accuracy of [" Foreground="Yellow"/><Run Text="accuracy]" Foreground="Green"/>
</TextBlock>
Note: every enter(or new line) between Run tag make have space between them.
I know this post is old, but have you tried this?? You can actually add multi colored text, this way in a TextBlock..
Xaml: <TextBlock x:Name="txt_Txt"/>
foreach (var itm5 in "! Hello World !; %Hello World%".Split(';'))
{
if (txt_Txt.Inlines.Count() > 0)
txt_Txt.Inlines.Add(new Run("\r\n"));
foreach (var letter in itm5)
{
if (char.IsSymbol(letter))
txt_Txt.Inlines.Add(new Run(letter.ToString()) { Foreground = Brushes.Red });
else
txt_Txt.Inlines.Add(new Run(letter.ToString()) { Foreground = Brushes.Black });
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With