在WPF中,标记Closing上有一个事件<Window...,我们可以在其中连接一些处理代码MainWindow_OnClosing.
但在UWP应用中没有这样的事件.我猜是关闭Unloaded,甚至Unloading没有.
我只是将我的处理代码放在那里,但仍然感到担忧.是否Unloaded应该为此类工作举办活动?有什么我需要注意的吗?
根据MSDN,Window类有一个Closed事件.我在发布组件Closing事件时提到这一点window,但请记住事件的注释:
窗口关闭时发生Closed事件.但是,Windows应用商店应用通常使用单个Window实例,并且不会打开和关闭其他Window实例.
现在,当使用主窗口的Frame导航系统和Pages时,我建议您使用OnNavigatedTo和OnNavigatedFrom事件来操作类的所有初始化和配置功能.
您可能需要注意OnNavigationFrom在卸载页面之前立即调用它,并且不再是父帧的当前源.
一个非常简单的例子:
Windows.ApplicationModel.Resources.ResourceLoader loader;
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
loader = new Windows.ApplicationModel.Resources.ResourceLoader();
var navigationPageContentFormat = loader.GetString("NavigationPageContent");
var navigationPageContentWhenEmpty = loader.GetString("NavigationPageContentWhenEmpty");
this.ParameterTextBlock.Text = String.Format(navigationPageContentFormat, e.Parameter?.ToString() ?? navigationPageContentWhenEmpty);
}
protected override void OnNavigatingFrom(NavigatingCancelEventArgs e)
{
loader = null;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5515 次 |
| 最近记录: |