我正在通过触发此类功能的按钮为WPF中的RichTextBox实现基本格式化功能(粗体,斜体,下划线)(如果需要某些上下文,请参阅我的previous question。)
与this answer一样,我可以通过以下方式应用下划线:
selectionRange.ApplyPropertyValue(Inline.TextDecorationsProperty, TextDecorations.Underline);
问题是这似乎将下划线应用于整个Inline
。例如,如果我有文字" Chuck Norris
",我只会突出显示" Norris
",那么整个" {{ 1}}"单击下划线按钮时会突出显示。
此问题不适用于粗体和斜体,因为我使用的是Chuck Norris
和TextElement.FontWeightProperty
,但在使用TextElement.FontStyleProperty
时,我遇到了我刚刚描述的问题。
有没有办法让下划线仅适用于所选文字,而不适用于整个Inline.TextDecorationsProperty
?
答案 0 :(得分:2)
您可以使用以下内容:
richTextBox.Selection.ApplyPropertyValue(Inline.TextDecorationsProperty, TextDecorations.Underline);
答案 1 :(得分:1)
您需要将内联拆分为单独的Run,并将下划线应用于代表选择的运行。