将滚动查看器锁定到位

时间:2011-04-21 17:04:38

标签: windows-phone-7 scrollviewer microsoft.ink

我在Windows Phone 7应用程序的scrollviewer中有一个inkpresenter。通常当用户开始绘制时,滚动查看器接管中间笔划,使得实际绘制内容变得困难。我尝试在需要使用inkpresenter时禁用ScrollBarVisibility,但滚动查看器会自动返回到顶部。那么如何在使用inkpresenter时阻止滚动查看器滚动,同时仍保持滚动位置?

<ScrollViewer Name="ScrollBars" VerticalScrollBarVisibility="{Binding ScrollEnabled}" >
    <Canvas Height="2000">
        ...
        <InkPresenter Name="InkCanvas" Strokes="{Binding Strokes}" Canvas.Top="500" />
    </ Canvas >
</ScrollViewer >

编辑:

所以我尝试使用代码隐藏中的滚动功能来更新垂直偏移量,其中我有一个链接到以下代码的按钮:

var offset = scrollViewer.VerticalOffset;
ScrollEnabled = ScrollBarVisibility.Disabled;
scrollViewer.ScrollToVerticalOffset(offset);

再次,它只是回到顶部。任何想法都错了吗?

1 个答案:

答案 0 :(得分:1)

禁用VerticalScrollBarVisibility调用Scrollviewer.ScrollToVerticalOffset后手动将InkPresenter置于视图中。