【发布时间】:2017-07-10 17:51:10
【问题描述】:
我不得不改变滚动查看器内容的高度,而不管它里面的内容需要多大。
原因是我会有一个很长的图像,并且我不想在滚动时减慢我的 GUI。因此,我剪切了长图像并根据当前滚动查看器的垂直偏移量渲染它的拼接图像。
我试图通过放置一个隐藏的长图像来实现它,这样它就不会在滚动时呈现并且不会有任何延迟。但我对此感觉不太好。
有人可以帮我动态增加 ScrollViewer 内容的高度吗?
代码在这里:
<Grid Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="9" Grid.RowSpan="12" Margin="10,60,10,0" >
<Image x:Name="StitchedImage" SnapsToDevicePixels="True" HorizontalAlignment="Stretch" Stretch="Fill"/>
<ScrollViewer x:Name="ImageScrollViewer" Background="Transparent" ScrollChanged="ImageScrollViewer_ScrollChanged" VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Disabled">
<Grid VerticalAlignment="Top" HorizontalAlignment="Left" >
<Image x:Name="longImageHidden" SnapsToDevicePixels="True" Visibility="Hidden"/>
</Grid>
</ScrollViewer>
</Grid >
【问题讨论】:
-
给滚动查看器中的网格命名,然后在代码隐藏中手动设置它的高度?
-
那么,当图像高度设置为相同值时,渲染高度将不等于渲染高度。
-
我认为如果我可以在没有任何来源的情况下给出一个仅指定高度和宽度的空白图像,那将是非常酷的。这甚至可能吗?