关于c#:在FlowDocument中启用嵌入式控件

关于c#:在FlowDocument中启用嵌入式控件

Enabling embedded controls in a FlowDocument

我在标准WPF应用程序窗口中有一个FlowDocument,其中有一些文本,其中有一些超链接和按钮。

问题是,如果我将这个FlowDocument放在FlowDocumentPageViewer之外的任何东西中,则超链接和按钮将被禁用("显示为灰色")。

1
2
3
4
5
6
7
8
9
<FlowDocumentScrollViewer>
  <FlowDocument>
      <Paragraph>
        Hello, World!
        <Hyperlink NavigateUri="some-uri">click me</Hyperlink>
        <Button Click="myButton_Click" Content="Click me too!" />
      </Paragraph>
  </FlowDocument>
</FlowDocumentScrollViewer>

以上内容将起作用,并且该链接将是可单击的。但是,我不希望使用完整的pageviewer,因为它将显示导航按钮(后退/前进)缩放,并且列的行为也很奇怪。

我希望在简单的FlowDocumentScrollViewer中使用它(或其他只显示文本而不会产生额外绒毛的东西)。

编辑:
问题不只是超链接。如果FlowDocument位于FlowDocumentScrollViewer内部,则与IsEnabled属性无关,任何按钮(如Button,ListBox,ComboBox)(用户可以与之交互的任何控件)都会"灰显"。

编辑2:
好吧,这一定是一个错误,或者从我的角度来看是什么,因为我最终重写了控件,现在它可以工作了。我想如果在视觉树中某处IsEnabled = False导致了这种情况,那肯定是某种排序。


我正在使用FlowDocumentScrollViewer作为我的"关于"框:

1
2
3
4
<FlowDocumentScrollViewer VerticalScrollBarVisibility="Auto">
    <FlowDocument>
        <Paragraph>
            <!-- ... -->

我没有您提到的任何控件或问题。


我想知道您是否会遇到这样的事情?

1
2
3
4
<TextBlock>
<Hyperlink>
    <Run Text="Test link"/>
</Hyperlink >

1
</TextBlock>


推荐阅读

    linux常用命令文本?

    linux常用命令文本?,工作,命令,网络,地址,系统,管理,标准,信息,目录,文件,Lin

    嵌入式linux网络命令?

    嵌入式linux网络命令?,系统,基础,网络,设备,平台,培训,环境,服务,项目,嵌入

    linux文本查询命令?

    linux文本查询命令?,标准,命令,文件,工具,数据,信息,位置,系统,内容,文本,Lin

    linux在线命令文本?

    linux在线命令文本?,系统,工作,信息,在线,地址,命令,基础,标准,工具,目录,Lin

    linux编写文本命令?

    linux编写文本命令?,工作,系统,命令,第一,信息,发行,代码,名字,文件,终端,lin

    linux压缩文本的命令?

    linux压缩文本的命令?,系统,图片,命令,设备,工具,位置,软件,管理,文件,目录,

    linux压缩文本的命令?

    linux压缩文本的命令?,系统,图片,命令,设备,工具,位置,软件,管理,文件,目录,

    linux输入文本命令?

    linux输入文本命令?,系统,位置,电脑,工作,首开,命令,终端,模式,指令,字符,如

    linux启用命令模式?

    linux启用命令模式?,系统,密码,数字,首页,电脑,情况,终端,界面,模式,命令,安

    linux启用6g命令?

    linux启用6g命令?,系统,工作,情况,信息,设备,指标,管理,地址,命令,状态,在lin

    linux替换文本命令?

    linux替换文本命令?,信息,系统,命令,内容,文件,文本,字符串,字符集,单词,字

    linux替换文本的命令?

    linux替换文本的命令?,系统,地址,工作,信息,命令,标准,数据,内容,文件,字符

    linux嵌入式截图命令?

    linux嵌入式截图命令?,系统,环境,软件,网络,支柱,代码,工具,标准,发展,工作,l

    linux编辑文本命令行?

    linux编辑文本命令行?,工作,系统,信息,状态,地址,命令,管理,标准,目录,文件,L

    linux查看文本的命令?

    linux查看文本的命令?,系统,工作,标准,信息,命令,管理,数据,文件,目录,时间,L

    linux文本中插入命令?

    linux文本中插入命令?,工作,地址,系统,命令,信息,第一,工具,地方,密码,情况,L

    嵌入式的linux命令?

    嵌入式的linux命令?,系统,工作,地址,软件,信息,基础,命令,嵌入式,电脑,环境,l

    linux文本撤销命令?

    linux文本撤销命令?,系统,命令,信息,环境,状态,进程,程序,终端,快捷键,用户,

    linux命令中创建文本?

    linux命令中创建文本?,系统,时间,文件,终端,名字,名称,发行,命令,文件夹,文

    linux文本编辑命令?

    linux文本编辑命令?,工作,系统,地址,信息,环境,基础,命令,入口,网站,技术,lin