[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>

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

相关推荐
政沅同学7 小时前
基于 C# WPF + HALCON 的工业视觉算法工具框架(开源)
开发语言·c#·wpf
happyprince10 小时前
03_verl-设计理念与核心原理
wpf
happyprince12 小时前
01_verl-项目概览与架构总览
架构·wpf
Chris _data13 小时前
# WPF 学习记录( 第二天)
学习·wpf
myenjoy_11 天前
大规模采集架构——从单台网关到千点集群
架构·wpf
Chris _data2 天前
c#学习WPF笔记(一)
学习·c#·wpf
FuckPatience2 天前
WPF 自定义容器控件的布局
wpf
逆境不可逃2 天前
深入理解 SingleFlight:从单机到分布式的请求合并方案全解析
分布式·wpf
TDengine (老段)2 天前
TDengine 逻辑计划生成 — 从 AST 到关系代数算子树
大数据·数据库·物联网·wpf·时序数据库·tdengine·涛思数据
小二·3 天前
微服务架构设计与实践
微服务·架构·wpf