我正在阅读UWP的文档并且我被卡住了一点。
我有几个连接到WCF服务的页面,从中获取一些信息,其中很少有人下载图片并需要几秒钟才能加载。
所以当我尝试使用
时,我决定在加载时实现加载屏幕this.Frame.Navigate(typeof(page));
我陷入僵局状态,一切都冻结了,而新页面正在加载我尝试在另一页上加载页面加载事件,但这并没有多大帮助,因为它仍然锁定在最后一个表单上。
有人知道我在调用this.Frame.Navigate()
时需要调用的正确事件,这样我可以在加载新帧时初始化我的加载控件吗?
答案 0 :(得分:0)
尝试在像这样的单独窗口上启动视图
try
{
CoreApplicationView Nv= CoreApplication.CreateNewView();
var z = CoreApplication.MainView;
int id= 0;
await
Nv.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
Frame frame = new Frame();
frame.Navigate(typeof(page));
Window.Current.Content = frame;
// You have to activate the window in order to show it later.
Window.Current.Activate();
id= ApplicationView.GetForCurrentView().Id;
});
bool viewShown = await ApplicationViewSwitcher.TryShowAsStandaloneAsync(id);
}
catch (Exception eee)
{
Windows.UI.Popups.MessageDialog errorBox =
new Windows.UI.Popups.MessageDialog("Couldn't Create New
Window: " + eee.Message);
await errorBox.ShowAsync();
}
答案 1 :(得分:0)
导航至载入画面
this.Frame.Navigate(typeof(LoadingScreen));
在LoadingScreen中的OnNavigatedTo
事件中“下载图片”
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
await DownloadPictures();
//After downloading, navigate to the next page
this.Frame.Navigate(typeof(page));
}