仅在RichTextBox中进行下划线选择

时间:2014-08-04 11:28:25

标签: wpf selection richtextbox underline

我正在通过触发此类功能的按钮为WPF中的RichTextBox实现基本格式化功能(粗体,斜体,下划线)(如果需要某些上下文,请参阅我的previous question。)

this answer一样,我可以通过以下方式应用下划线:

selectionRange.ApplyPropertyValue(Inline.TextDecorationsProperty, TextDecorations.Underline);

问题是这似乎将下划线应用于整个Inline。例如,如果我有文字" Chuck Norris",我只会突出显示" Norris",那么整个" {{ 1}}"单击下划线按钮时会突出显示。

此问题不适用于粗体和斜体,因为我使用的是Chuck NorrisTextElement.FontWeightProperty,但在使用TextElement.FontStyleProperty时,我遇到了我刚刚描述的问题。

有没有办法让下划线仅适用于所选文字,而不适用于整个Inline.TextDecorationsProperty

2 个答案:

答案 0 :(得分:2)

您可以使用以下内容:

richTextBox.Selection.ApplyPropertyValue(Inline.TextDecorationsProperty, TextDecorations.Underline);

答案 1 :(得分:1)

您需要将内联拆分为单独的Run,并将下划线应用于代表选择的运行。