【问题标题】:Protecting custom inline elements in WPF RichTextBox保护 WPF RichTextBox 中的自定义内联元素
【发布时间】:2013-06-30 15:58:55
【问题描述】:

在决定是否可以在我的项目中使用 WPF RichTextBox 之前,我目前正在使用它。

我需要的是具有代表各种对象(其他文本或对象)的文本元素,有点像 WIKI,但不完全是。单击此类文本会发生一些事情,例如导航到其他文本或提供其他选项。

无论如何,因为这些小文本位代表我想保护它们的其他对象,但我只成功了部分:用户不能在这样的文本元素内放置插入符号并编辑/删除它,但它仍然是可能的进行选择并删除/替换它,包括我的自定义元素。

有人用RichTextBox 走过这条路吗?我最近的实验是在成为选择的一部分时简单地记录所有自定义文本元素,然后在(破坏性)编辑后恢复它们。那是因为我找不到重新插入自定义内联元素(派生自Run 类)的方法。我发现以编程方式在指定位置 (TextPosition) 插入 Run(基于)元素的唯一方法是通过其构造函数。

嗯,任何提示将不胜感激。

【问题讨论】:

  • 很想看看你的代码,因为我正在尝试做类似的事情。在我的情况下,我希望用户能够编辑/删除运行,但我想知道他们对特定运行做了什么。

标签: wpf c#-4.0 richtextbox


【解决方案1】:

您确实在寻找FlowDocument,而不是RichTextBox

【讨论】:

  • 不确定我是否理解。 RichTextBox.Document FlowDocument 还是我错过了什么?
  • @JonasRembratt 您正在使用具有最终用户编辑功能的控件,但您想禁用这些功能。只需改用FlowDocumentScrollReader 或其他类型的Reader
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-06-05
  • 2011-04-29
  • 1970-01-01
  • 1970-01-01
  • 2021-08-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多