我正在尝试找到一种最可扩展的方式在窗口内显示FlowDocument
- 只是FlowDocument
。我有:
<FlowDocumentScrollViewer x:Name="message" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Visible">
然后在Window的构造函数中,我将查看器的Document设置为从XAML加载的(在代码中)。 XAML包含:
<FlowDocument xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Background="{x:Null}"
FontSize="12" FontFamily="Segoe UI" PagePadding="2">
<BlockUIContainer>
<BlockUIContainer.Resources>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="TextWrapping" Value="Wrap"/>
</Style>
</BlockUIContainer.Resources>
<StackPanel MaxWidth="200">
<TextBlock Text="{Binding DefinedWord}" FontWeight="Bold" />
<ListBox ItemsSource="{Binding Definitions}"
Style="{StaticResource InvisibleListBox}" Margin="0"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Disabled"
ScrollViewer.CanContentScroll="false">
...
无论我尝试什么,FlowDocumentScrollViewer
都不会滚动,我看不到文档的截断部分。它与BlockUIContainer
有什么关系,还是我错过了其他什么?
答案 0 :(得分:1)
我最终通过将文档中的ListBox
设置为IsHitTestVisible="false"
,然后将Width
模板中的文本块的ListBoxItem
绑定到{{}来实现此功能1 {} ActualWidth
。
答案 1 :(得分:0)
Flexible Content Display With Flow Documents
摘要:FlowDocumentScrollViewer - 此控件显示文档 用滚动条连续流动, 类似于网页或Web布局 在Microsoft Word中。
答案 2 :(得分:0)
对我而言,FlowDocumentScrollViewer
的替代选项已成功,
参见中的示例, http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox.aspx
其他选项可能是FlowDocumentPageViewer
,FlowDocumentReader
。