4

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

问题是,如果我将此 FlowDocument 放在 FlowDocumentPageViewer 以外的任何内容中,链接和按钮将被禁用(“灰显”)。

<FlowDocumentScrollViewer>
  <FlowDocument>
      <Paragraph>
        Hello, World!
        <Hyperlink NavigateUri="some-uri">click me</Hyperlink>
        <Button Click="myButton_Click" Content="Click me too!" />
      </Paragraph>
  </FlowDocument>
</FlowDocumentScrollViewer>

以上将起作用,并且链接将是可点击的。但是,我不想要完整的页面查看器,因为它会显示导航按钮(后退/前进)缩放,并且它还有一个奇怪的列行为。

我希望它在一个简单的FlowDocumentScrollViewer中(或任何其他只显示文本而没有额外模糊的东西)。

编辑: 问题不仅在于超链接。如果 FlowDocument 位于 FlowDocumentScrollViewer 内,则任何控件,如 Button、ListBox、ComboBox(用户可以与之交互的任何内容)都将“灰显”,无论 IsEnabled 属性如何。

EDIT2: 好吧,这一定是我的错误或什么,因为我最终重写了控件,现在它可以工作了。我猜如果 IsEnabled=False 在视觉树的某处导致了这种情况,我想有某种原因。

4

2 回答 2

2

我正在为我的 about 框使用 FlowDocumentScrollViewer:

<FlowDocumentScrollViewer VerticalScrollBarVisibility="Auto">
    <FlowDocument>
        <Paragraph>
            <!-- ... -->

我没有你提到的任何控制或问题。

于 2008-09-30T15:59:17.770 回答
0

我想知道你是否期待这样的事情?

<TextBlock>
<Hyperlink>
    <Run Text="Test link"/>
</Hyperlink >

</TextBlock>
于 2008-09-17T07:19:24.637 回答