2016-02-06 2 views
0

У меня есть вопрос к вам. Как я могу сделать верхний индекс в текстовом блоке, используя только C#? Моя цель - динамически преобразовывать строку (количество знаков «^» динамически изменяется), поэтому записать ее в XAML (или я не знаю, как это сделать) невозможно. Я пробовал код по этой ссылке - Superscript of superscript in WPF. но он не работает :(C# wpf superscript (не в XAML)

Благодаря

+0

Im думая, что вам нужно Richtext блок –

+0

Так как будет ли это выглядеть? – oputyk

+0

Я думаю, что вы действительно хотите что-то сделать [Markdown] (http://stackoverflow.com/questions/3536324/markdown-for-c-wpf-project-markdownsharp). –

ответ

0

Я нашел ответ TextBlock может динамически изменяться таким образом:!

Run run1 = new Run("This is "); 

Run run2 = new Run("bold"); 
run2.FontWeight = FontWeights.Bold; 

Run run3 = new Run(" and "); 

Run run4 = new Run("italic"); 
run4.FontStyle = FontStyles.Italic; 

Run run5 = new Run("text."); 

Run run6 = new Run("x"); 

Run run7 = new Run("2"); 
run7.BaselineAlignment = BaselineAlignment.Subscript; 

myTextBlock.Inlines.Add(run1); 
myTextBlock.Inlines.Add(run2); 
myTextBlock.Inlines.Add(run3); 
myTextBlock.Inlines.Add(run4); 
myTextBlock.Inlines.Add(run5); 
myTextBlock.Inlines.Add(run6); 
myTextBlock.Inlines.Add(run7);