如何增加richtextbox中文本的字体大小
Posted
技术标签:
【中文标题】如何增加richtextbox中文本的字体大小【英文标题】:How do I Increase Fontsize for text in richtextbox 【发布时间】:2016-04-24 15:31:44 【问题描述】:每次调用方法时如何设置字体大小。我想使用richtextbox.ApplyPropertyValue()
方法。我已经试过了
myrichtextbox.SetValue(TextElement.FontSizeProperty, fontSizedouble +10);
myrichtextbox.FontSize = (myrichtextbox.FontSize + 10);
【问题讨论】:
它只会工作一次,对吗? 问题是你有两个控件,一个是 myrichtextbox,第二个是 txtAppendValue,你将 txtAppendValue.FontSize + 10 添加到 myrichtextbox,它只会设置一次大小,因为 txtAppendValue.FontSize 永远不会改变 myrichtextbox.FontSize = (myrichtextbox.FontSize + 10); @Darshan :我更新了我的问题。实际上,在使用上述两种方法后,其他功能(如 textpointer 和 textrange)执行速度很慢,并且上述代码一次又一次地使用,不仅一次。 【参考方案1】:从您的 FlowDocument
更改它。
this.Document.FontSize = this.Document.FontSize + 10;
【讨论】:
【参考方案2】:对于富文本框,您需要选择--
试试这个
TextSelection selectedText = myrichtextbox.Selection;
selectedText.ApplyPropertyValue(RichTextBox.FontSizeProperty, fontSizedouble +10);
对于所有文本,您都可以试试这个 --
TextRange allText = new TextRange(MyRichTextBox.Document.ContentStart, MyRichTextBox.Document.ContentEnd);
allText.ApplyPropertyValue(RichTextBox.FontSizeProperty, fontSizedouble +10);
要一次又一次地改变大小,你需要检查文本的大小而不是richTextBox,这样做--
TextRange allTextRange = new TextRange(MyRichTextBox.Document.ContentStart, MyRichTextBox.Document.ContentEnd);
var size = (double)allTextRange.GetPropertyValue(FontSizeProperty);
allTextRange.ApplyPropertyValue(RichTextBox.FontSizeProperty, size + 10);
【讨论】:
@Muds : 它只会增加选中的文本,我想改变整个 Richtextbox 文本,我想一次又一次地增加字体。 @ Muds : 第一次按下它就可以了。之后选择的文本字体只会增加。 Arjun,你看到我最后的更新了吗,用最后一个就可以了。 @ Muds:Ya.i 只使用了最后一个。在此代码块之后,我曾经将 textrange.clearallproperties() 方法用于另一个目的。它影响到你的代码块吗? dude tbh 我不明白你现在的问题是什么,你能否提出另一个问题,因为它似乎与这个完全不同?以上是关于如何增加richtextbox中文本的字体大小的主要内容,如果未能解决你的问题,请参考以下文章