我在标准 WPF 应用程序窗口中有一个 FlowDocument,其中有一些文本,并且在该文本中有一些超链接和按钮。
问题是,如果我把这个 FlowDocument 放在 except a 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 (或任何其他只显示文本而没有额外模糊的内容)。
编辑: 问题不仅仅在于超链接。 任何控件,如 Button、ListBox、ComboBox - 用户可以与之交互的任何内容 - 如果 FlowDocument 位于 FlowDocumentScrollViewer 内,则无论 IsEnabled 属性如何,都会“变灰”。
编辑 2: 好吧,这一定是我的错误或其他原因,因为我最终重写了控件,现在它可以工作了。我想在可视化树中的某处是否有某种 if IsEnabled=False 导致了这种情况。
最佳答案
我正在为我的关于框使用 FlowDocumentScrollViewer:
<FlowDocumentScrollViewer VerticalScrollBarVisibility="Auto">
<FlowDocument>
<Paragraph>
<!-- ... -->
我没有您提到的任何控件或问题。
关于c# - 在 FlowDocument 中启用嵌入式控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/80593/