我想在省略文本框中添加省略号(..)。
在正常TextBlock
中,TextTrimming="WordEllipsis"
具有限制长度以允许省略号表示的属性,但富文本框则不会。它现在应该只作为一个富文本框实现。不允许使用文本块。
我想修剪两三行并添加省略号(..)选项。有什么好办法吗?
我想告诉你我是如何使用RichTextBox的,但声誉很低。
答案 0 :(得分:0)
你不
如grek40所述,省略号概念仅在显示文本时才有效。
例如,假设显示省略号,并且用户尝试部分选择RichTextBox
中的某些文本,包括省略号,选择的结果是什么?你无法告诉。
<强>也许强>
由于省略号通常是Scrollbar
的替代,隐藏文本而不是允许您通过滚动来访问它,您可以通过使用WPF样式来伪造它。
每当触发Scrollbar visibility trigger时,创建一个样式,显示省略号的图标/图片(放置由您决定)。省略号可见后,您需要禁用Scrollbar
。
这显然比简单地设置属性需要更多的努力,如果不仔细实施,它很容易成为用户体验的噩梦,所以要警告。
注意:另一条评论(由Walt Ritscher撰写)与一个类似的问题有关,解决方案与此类似。
替代可能
可以通过使用两个不同的RichTextBox
控件来实现另一个伪造的省略号。
第一个RichTextBox
会将ReadOnly
设置为true
。将文本修剪为允许的最大长度,并附加省略号并将其显示在第一个RichTextBox
内。
当用户需要编辑文本时,请隐藏第一个RichTextBox
并显示包含整个文本的第二个RichTextBox
。