我正在使用scrollviewer在其中显示图像。
<ScrollViewer Name="scrollViewer1" Height="500" Width="500" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" Padding="0" >
<Image x:Name="img1" Width="100" Source="/MyApp;component/Images/Test.jpg" />
</ScrollViewer>
但是当我在代码中重新调整图像大小,并立即使用 scrollViewer.ScrollToHorizontalOffset() (重新定位图像)时,它不起作用:
img1.Width = 1000;
scrollViewer1.ScrollToHorizontalOffset(500);
我在img1.Width = 1000
确认尚未更新之后验证了 ScrollableWidth 属性。所以我在调整图像大小后立即使用了 UpdateLayout() ,现在很好了 ScrollableWidth : / p>
img1.Width = 1000;
scrollViewer1.UpdateLayout();
scrollViewer1.ScrollToHorizontalOffset(500);
但 ScrollToHorizontalOffset 仍然无效。如果我之后这样做,在另一个用户按钮上单击它可以工作。 :/
任何人都有线索?
答案 0 :(得分:0)
没关系......我的错误,上面的例子有效。在我的项目中,我的ScrollToHorizontalOffset
基于未更新的img1.ActualWidth
。
抱歉:/