我的应用程序有一个可调整大小的WPF窗口,其中一个框架显示不同的WPF页面。大多数情况下页面大于框架,如果是这种情况,框架应显示滚动条。不幸的是,它从不显示任何滚动条。
这是我的代码:
<Grid>
<Frame Name="MainFrame"
NavigationUIVisibility="Hidden"
Width="Auto"
Height="Auto"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch"
ScrollViewer.CanContentScroll="True"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Auto" />
</Grid>
代码背后:
MainFrame.Navigate(new Page1());
我做错了什么?
答案 0 :(得分:2)
尝试将Frame
包裹在ScrollViewer
:
<Grid>
<ScrollViewer>
<Frame Name="MainFrame"
NavigationUIVisibility="Hidden"
Width="Auto"
Height="Auto"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch"
ScrollViewer.CanContentScroll="True"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Auto" />
</ScrollViewer>
</Grid>
答案 1 :(得分:1)
我有同样的问题,我放弃了,只是将可见性设置为可见。如果它不需要滚动条那么就没有真正的伤害。
答案 2 :(得分:0)
有同样的问题,没有任何效果。所以我使用了一种解决方法,通过向目标页面添加scrollviewer来解决它 并将页面大小设置为帧大小
<Page x:Class="PageInFrame" Height="1050" Width="555" > …
<ScrollViewer x:Name="svScroll" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
<Grid x:Name="LayoutRoot" Height="1050" Width="555">
…..
</Grid>
</ScrollViewer>
将页面高度和宽度属性设置/替换为目标/包含帧大小(可以在运行时或设计时完成)