【发布时间】:2023-03-05 09:42:01
【问题描述】:
每当我似乎在 Metro 应用程序中从一个页面导航到另一个页面时,都会出现一个“闪光”,其中没有显示任何内容 - 仅显示默认背景颜色。如何使 Frame.Navigate 方法正确转换?我的应用程序的图像很重,所以我想部分原因是图像加载。不过我尝试过其他应用程序,似乎也有类似的问题。
【问题讨论】:
标签: c# xaml microsoft-metro windows-runtime
每当我似乎在 Metro 应用程序中从一个页面导航到另一个页面时,都会出现一个“闪光”,其中没有显示任何内容 - 仅显示默认背景颜色。如何使 Frame.Navigate 方法正确转换?我的应用程序的图像很重,所以我想部分原因是图像加载。不过我尝试过其他应用程序,似乎也有类似的问题。
【问题讨论】:
标签: c# xaml microsoft-metro windows-runtime
我找到的解决方案是使用 WinRT XAML 工具包,该工具包具有 AlternativePage 和 AlternativeFrame 控件。我使用扩展的初始屏幕来预加载 MainPage 和用户可能需要快速访问的任何页面 - 然后我会在需要时预加载其他页面。
【讨论】:
在使用图像密集型 Metro 应用程序时,我遇到了同样的问题。简而言之,我从来没有找到一种无缝、不冲突的过渡方式,即使在对加载的项目进行排序并通过异步调用填充适当的元素时也是如此。
我最后做的是对第一个页面的父元素应用淡出效果,并在第二个页面上应用淡入效果。它使负载更令人赏心悦目。不是带有图像的弹出效果,而是平滑过渡。它确实比非褪色版本增加了一个非常短的延迟,但它看起来更加自然和吸引人。
【讨论】: