如何截断FlowDocument

时间:2017-07-20 08:51:30

标签: .net wpf richtextbox flowdocument

我想阻止RichTextBox的用户输入超过指定数量的字符。

到目前为止,我设法使用

获取文本的长度
var length = new TextRange(rtb.Document.ContentStart, rtb.Document.ContentEnd).Text.Length;

我现在想要的是,如果长度超过定义的限制,则截断FlowDocument。我该怎么办?

1 个答案:

答案 0 :(得分:0)

您可以从由文档的最大长度和结尾定义的指针中选择所有文本。然后将text属性设置为空。

int maxLength = ?;
var endPointer = rtb.Document.ContentStart.GetPositionAtOffset(maxLength, LogicalDirection.Forward);
var selectionToClear = new TextRange(endPointer, rtb.Document.ContentEnd);
selectionToClear.Text = string.Empty;