Вопрос по xaml, wpf, c# – Как назначить Run для свойства text программно?

10

Я знаю, в XAML мы можем сделать ...

<TextBlock FontSize="18">
   This is my text <LineBreak/>
   <Run FontSize="24" FontWeight="Bold">My big bold text</Run>
</TextBlock>

Вопрос в том, как программно назначить свойство Run to text (string).

Ваш Ответ

1   ответ
17

TextBlock вы увидите, что ContentProperty установлен вInlines

[Localizability(LocalizationCategory.Text), ContentProperty("Inlines")]
public class TextBlock : FrameworkElement, ...

Это означает, что вы добавитеInline элементы к собственностиInlines для каждого добавленного между открывающим и закрывающим тегомTextBlock.

Таким образом, C # эквивалент вашего Xaml

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);
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded[ContentPropertyAttribute]Error: User Rate Limit ExceededTextBlockError: User Rate Limit ExceededTextError: User Rate Limit ExceededInlineError: User Rate Limit ExceededInlinesError: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded

Похожие вопросы