I know in XAML we can do...
<TextBlock FontSize="18">
This is my text <LineBreak/>
<Run FontSize="24" FontWeight="Bold">My big bold text</Run>
</TextBlock>
Question is, how can I assign a Run into a text (string) property, programmatically?
If you look at TextBlock
you will see that ContentProperty is set to Inlines
[Localizability(LocalizationCategory.Text), ContentProperty("Inlines")]
public class TextBlock : FrameworkElement, ...
This means that you will add Inline
elements to the property Inlines
for everyting added between the opening and closing tag of TextBlock
.
So the c# equivalent to your Xaml is
TextBlock textBlock = new TextBlock();
textBlock.FontSize = 18;
textBlock.Inlines.Add("This is my text");
textBlock.Inlines.Add(new LineBreak());
Run run = new Run("My big bold text");
run.FontSize = 24;
run.FontWeight = FontWeights.Bold;
textBlock.Inlines.Add(run);
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