我正在为Windows 10开发一个UWP应用程序。我想在用户减小窗口大小时显示一个消息对话框。到目前为止,我已经尝试使用this link来实现该功能。我的目的在这里实现了,只是当用户最小化窗口或更改窗口大小时出现消息对话框。我还附上了以下代码片段。谢谢。
private async void CoreWindow_SizeChanged(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.WindowSizeChangedEventArgs args)
{
var appView = ApplicationView.GetForCurrentView();
MessageDialog messageDialog = new MessageDialog("");
if (!appView.IsFullScreen)
{
if (!msgboxshown)
{
messageDialog = new MessageDialog("To run the application smoothly, please maximize the window.");
msgboxshown = true;
await messageDialog.ShowAsync();
msgboxshown = false;
}
}
args.Handled = true;
}
答案 0 :(得分:0)
我的目的是在这里实现,只是当用户最小化窗口或更改其大小时出现消息对话框。
当应用最小化时,它将调用 EnteredBackground
事件,您可以检测到它并显示消息对话框。
public App()
{
this.InitializeComponent();
this.Suspending += OnSuspending;
this.EnteredBackground += App_EnteredBackground;
}
private async void App_EnteredBackground(object sender, EnteredBackgroundEventArgs e)
{
var messageDialog = new MessageDialog("To run the application smoothly, please maximize the window.");
await messageDialog.ShowAsync();
}
更新
正如@Raymond Chen所说的,它看起来是os bug。因此,请谨慎使用上述方法。