【发布时间】:2016-02-14 03:15:03
【问题描述】:
我有一个 WPF 用户控件,我想使用 FlowDocument 在代码中加载动态内容:文本块、项目符号列表等。内容按预期加载。盒子大小在设计器中看起来不错,但在运行时 FlowDocument 坚持裁剪结果并且只显示部分宽度。
我的假设是 Viewbox 将填充网格单元格和内部 FlowDocument 以填充所有可用空间。
我尝试在代码中设置 FlowDocument 的 PageWidth/PageHeigth 但没有结果。
任何帮助表示赞赏。
<Grid x:Name="grdDisplay">
<Grid.RowDefinitions>
<RowDefinition Height="22*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Viewbox x:Name="viewboxContent" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" HorizontalAlignment="Left" VerticalAlignment="Top" StretchDirection="DownOnly">
<FlowDocumentScrollViewer VerticalScrollBarVisibility="Hidden" HorizontalScrollBarVisibility="Hidden">
<FlowDocument x:Name="flowDocument">
</FlowDocument>
</FlowDocumentScrollViewer>
</Viewbox>
<Viewbox Grid.Row="1" Grid.Column="0" VerticalAlignment="Bottom" HorizontalAlignment="Left" StretchDirection="DownOnly">
<TextBlock x:Name="txtBottom" />
</Viewbox>
</Grid>
【问题讨论】:
-
从 Viewbox 中移除 FlowDocumentScrollViewer,不要认为你需要 Viewbox。
-
我会摆脱视图框。
-
为什么要去掉viewbox??我将动态添加不同大小的内容,并且我想确保它始终被完整地看到。如果没有 viewbox,这将如何实现?
标签: c# wpf flowdocument viewbox