[WPF] RichTextBox如何显示省略号?

RichTextBox是个很强大的文本组件,它可以用于显示各种复杂的富文本。

通常用富文本显示内容,通常是可以支持滚动显示,所以常规场景下是用不到省略号的。但是也不乏有些场景需要用到 省略号。比如:文本内容的简述。

下面来分享一种比较简单的实现方法,来实现富文本省略号逻辑。

我们都知道 WPF里面有 TextBlock组件,它是一个相对比较轻量的文本组件,使用频率也是比较高的。它可以支持直接文本,也可以直接内联(Inlines)文本,如:Run标签。TextBlock本身也支持 TextTrimming,可以用来显示省略号。

所以呢,要让 RichTextBox来支持省略号的思路就比较简单,只需要在它的段落里面,内嵌 TextBlock即可。

处理前的流文本示例:

XML 复制代码
<FlowDocument xml:space="preserve" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
    <Paragraph>
            <Run Foreground="red">[红包]</Run>
            <Run Foreground="green">恭喜发财,大吉大利</Run>
    </Paragraph>
</FlowDocument>

处理后的流文本示例:

XML 复制代码
<FlowDocument xml:space="preserve" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">

    <Paragraph>
        <TextBlock TextTrimming="CharacterEllipsis" Foreground="blue">
            <Run Foreground="red">[红包]</Run>
            <Run Foreground="green">恭喜发财,大吉大利</Run>
        </TextBlock>
    </Paragraph>
</FlowDocument>

以上方法,就可以简单的实现省略号的功能了。

相关推荐
FuckPatience13 小时前
WPF Telerik.Windows.Controls.Data.PropertyGrid 自定义属性编辑器
wpf
almighty2719 小时前
C#WPF控制USB摄像头参数:曝光、白平衡等高级设置完全指南
开发语言·c#·wpf·usb相机·参数设置
军训猫猫头1 天前
12.NModbus4在C#上的部署与使用 C#例子 WPF例子
开发语言·c#·wpf
我要打打代码1 天前
在WPF项目中使用阿里图标库iconfont
wpf
拾忆,想起2 天前
Redisson 分布式锁的实现原理
java·开发语言·分布式·后端·性能优化·wpf
weixin_464078072 天前
wpf依赖注入驱动的 MVVM实现(含免费源代码demo)
wpf
beyond谚语2 天前
一、WPF入门介绍+Grid和StackPanel布局介绍+实战模拟Notepad++页面布局
wpf
CPU不够了2 天前
WPF常见问题清单
wpf·自适应
beyond谚语2 天前
二、WPF——Style样式玩法(通过资源字典将Style独立,全局调用)
wpf
光辉岁月~3 天前
使用CalcBinding实现复杂逻辑绑定
wpf