我如何才能使内容这是放在WPF Viewbox
与Stretch="UniformToFill"
可滚动?
举例来说:
<Grid Height="500" Width="1000" >
<ScrollViewer VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible" >
<Viewbox Stretch="UniformToFill">
......
</Viewbox>
</ScrollViewer>
</Grid>
调整内容的大小以填充目标尺寸,同时保留其原始纵横比。如果目标的长宽比不同于源,则源内容将被剪裁以适合目标尺寸。
因此,我尝试使用ScrollViewer
来滚动到源内容中被剪切的区域,但滚动条是可见的,但被禁用。
我试过ClipToBounds="False"
,但没有用。
2条答案
按热度按时间x7yiwoj41#
ViewBox根据其所占的尺寸调整其内容的大小。ScrollViewer提供无限宽/高的内容来呈现。所以,当你把一个ViewBox放在一个ScrollViewer中时,ViewBox会认为它有“世界上所有的空间”来拉伸。
此外,ViewBox使用渲染转换来拉伸内容,这意味着ScrollViewer永远不会知道内容的最终大小。
为了让你的ScrollViewer工作,你必须在ViewBox上设置一个宽度/高度。它需要知道它占据了多少空间。
af7jpaap2#
我想你想要的差不多就是这个。