代码之家  ›  专栏  ›  技术社区  ›  Joe White

使FlowDocument的一部分不可选择

  •  1
  • Joe White  · 技术社区  · 15 年前

    (请注意,用户不会直接编辑此FlowDocument——这只是一种显示他们在其他地方输入的内容的好方法。)

    例如:

    <FlowDocumentScrollViewer>
      <FlowDocument>
        <Paragraph>
          Blah blah blah blah, blah blah blah -- blah blah blah blah blah blah.
          Blah, blah blah Blah blah blah, blah blah blah blah-blah blah.
          (<Hyperlink>Edit</Hyperlink> - <Hyperlink>Delete</Hyperlink>
        </Paragraph>
      </FlowDocument>
    </FlowDocumentScrollViewer>
    

    用户可以使用鼠标突出显示“版本1.0”文本,并将其复制到剪贴板。这很好。但是,它们也可以突出显示超链接,并复制这些超链接。我宁愿避免这种情况,有两个原因:

    • 超链接并不是内容的一部分,那么它们放在剪贴板上或其他程序中有什么用呢?
    • 我还希望表单上有其他超链接 是FlowDocument的一部分,如果某些超链接是可高亮显示的,而另一些则不是。

    我喜欢用这些超链接来换行,并且总是出现在换行文本最后一行的右边。据我所知,这意味着它们必须是FlowDocument的一部分。但这只是布局的一个伪制品——如果我能得到同样的布局,我也很乐意把它们放在外面。我不想让超链接高亮显示,就像我希望对话框的“确定”和“取消”按钮可以高亮显示一样。有什么办法可以实现吗?

    2 回复  |  直到 15 年前
        1
  •  0
  •   JC.    15 年前

    我刚刚检查了Blend,但您不能真正地将IsSelectionEnabled=false之类的属性应用于块

    但是你可以把没有被复制的(也许是单词?)会被剥皮

        2
  •  0
  •   McKay    11 年前

    如果是我,我会把这些链接放到flowdocument之外,可能放在侧边栏之类的地方。