c# - Windows 商店应用程序 ScrollViewer.ChangeView() 不工作

标签 c# windows-store-apps scrollviewer

尝试在双击事件触发的 Windows 应用商店应用中缩小 ScrollView 。

这是应该发生的代码

private void MainPhotoDisplay_DoubleTapped(object sender, DoubleTappedRoutedEventArgs e)
{
    MainPhotoDisplayscrollViewer.ChangeView(null, null, 1.0F,true);
}

但是如果我在模拟器中放大然后双击,什么也不会发生。 事件确实触发并且方法运行但没有任何反应, View 保持放大状态。

这是它的文档:http://msdn.microsoft.com/en-us/library/windows/apps/dn252762.aspx

这个过时的方法:

 MainPhotoDisplayscrollViewer.ZoomToFactor(1);

工作得很好,但遗憾的是它没有动画,这会导致糟糕的用户体验。这并不是我真正想要的。

关于为什么什么都没有发生的任何想法?

最佳答案

另一种解决方案是在指令之前添加一个 Task.Delay 调用。

真的很奇怪,但它有效。

await Task.Delay(1);
scroller.ChangeView(null, null, null, false); // whatever

关于c# - Windows 商店应用程序 ScrollViewer.ChangeView() 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22535838/

相关文章:

c# - WPF - 在 ScrollViewer 中封装自定义 Canvas

c# - 使用 C# Interop.Excel 从 NamesManager 中删除重复名称

c# - 我必须做什么才能使我的方法可等待?

c# - 自定义控件内的控件不可移动

windows - 新的 Windows 应用商店搜索 API?

javascript - 在 Windows 应用商店 Javascript 应用程序中使用 Ace 编辑器

c# - 如何使 Windows 8 Metro 滚动查看器响应鼠标滚轮?

c# - 使用 C# 从 XML 中删除没有属性的空元素?

c# - 将 float 转换为 decimal 在 C# 中会失去精度

c# - 不同的 Action 有不同的验证规则