我有一个使用Template10的UWP-XAML应用程序,并且在窗口大小调整首次运行应用程序的时间。运行应用程序后,相关窗口出现在一个奇怪的位置,然后窗口自行调整大小,最后当应用程序停止时,Windows会记住窗口的最后大小和位置。下次运行应用程序时,将恢复保存的大小和位置。
如何重置此已保存的尺寸/位置数据,以便我可以看到我的应用行为如何首次运行?
如果可能,我真的想以编程方式执行此操作,以便我可以轻松地重置。
感谢任何帮助。
答案 0 :(得分:2)
尝试在您的PreferredLaunchViewSize
App.xaml.cs
委托方法中设置App_VisibleBoundsChanged
。当您再次打开应用程序时,它将重置最后一个窗口大小。
protected override void OnLaunched(LaunchActivatedEventArgs e)
{
Frame rootFrame = Window.Current.Content as Frame;
......
if (e.PrelaunchActivated == false)
{
if (rootFrame.Content == null)
{
rootFrame.Navigate(typeof(MainPage), e.Arguments);
}
Window.Current.Activate();
ApplicationView.GetForCurrentView().VisibleBoundsChanged += App_VisibleBoundsChanged;
}
}
private void App_VisibleBoundsChanged(ApplicationView sender, object args)
{
var bounds = sender.VisibleBounds;
var scaleFactor = DisplayInformation.GetForCurrentView().RawPixelsPerViewPixel;
var size = new Size(bounds.Width * scaleFactor, bounds.Height * scaleFactor);
ApplicationView.PreferredLaunchViewSize = size;
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
}