2017-01-13 2 views
1

J'ai une application UWP-XAML qui utilise Template10 et a un bug dans la taille de la fenêtre d'abord fois l'application est exécutée. Après l'exécution de l'application, la fenêtre en question apparaît dans un endroit étrange, puis les fenêtres se redimensionnent et finalement, lorsque l'application s'arrête, Windows se souvient de la dernière taille et position de la fenêtre. La prochaine fois que l'application est exécutée, la taille et la position enregistrées sont restaurées.Comment réinitialiser la dernière taille/position de la fenêtre?

Comment puis-je réinitialiser les données de taille/position enregistrées afin de voir comment mon application se comporte comme si elle fonctionnait pour la première fois?

Je voudrais vraiment faire cela par programme si possible afin que je puisse facilement réinitialiser au besoin.

Toute aide est appréciée.

+0

Vos problèmes ont-ils été résolus? Et avez-vous d'autres mises à jour? –

Répondre

1

Essayez de définir PreferredLaunchViewSize dans votre méthode de délégation App.xaml.csApp_VisibleBoundsChanged comme suit. Lorsque vous ouvrez à nouveau l'application, la taille de la dernière fenêtre est réinitialisée.

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;   
} 
+0

C'est une bonne réponse. N'oubliez pas que le développeur peut demander un redimensionnement mais cela n'est pas garanti en fonction du périphérique et du mode de l'environnement actuel. –

+0

@ JerryNixon-MSFT Merci pour votre supplément. –

+0

Problème résolu. Merci! – Dan