我在标准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 > |