有没有人知道在RichTextBox
中存储任意数据的方法而用户无法看到这些数据? 2007 RTF规范包括注释(“\ atnid”,“\ atnauthor”,“\ annotation”等),但每当我将这些注释插入RichTextBox
的{{1}}时,注释就会消失(大概是因为.Rtf
不支持RTF注释。)我有a related question about whether it is possible to store the information inside a Metafile image。这些解决方案都可以接受。 TIA。
我正在尝试的是这样的事情:
RichTextBox
更新:应用程序元数据(“注释”)必须与RTF中的特定位置相对应。每个RichTextBox(或RTF文档,如果你愿意的话)也会有多个注释。我还希望元数据能够与RTF一起存在。因此,虽然可以将元数据保存在control.Tag中,但我必须自己负责将信息添加到数据库,注意每当用户编辑RTF并以某种方式确定元数据之后的元数据的新位置编辑。
答案 0 :(得分:1)
我认为使用atandb的响应将提供正确的解决方案。您可以使用\ v和\ _v0隐藏其间的数据,并将该隐藏数据作为特定数据访问该特定位置。
我在richtextbox中尝试过,rtf属性支持它,并且它不会通过跳过控制代码来修改rtf内容。我有同样的问题,我很幸运地得到了这个页面,现在我能够为rtf数据中的任何位置提供一些注释/评论。
非常感谢 Carl 提出您的问题,并非常感谢 AtanDB 。
答案 1 :(得分:0)
我不知道为RTF文档执行此操作是否有任何特殊方法,但如果您只想将某些数据存储在控件(任何类型的Control
)中而不向用户显示,则可以使用Tag
属性,如下所示:Control.Tag
答案 2 :(得分:0)
我认为ho1有正确的想法。 Control.Tag是一个对象,因此您可以使用List,Hash,Dictionary等通用数据结构来存储多个注释并将其存储在Tag属性中。
答案 3 :(得分:0)
richtext控件支持带有\ v的隐藏单词,并使用\ v0隐藏关闭而不是,我没有混淆它们,即使逻辑上\ v表示可见它反之亦然。