Accueil > WinRT > [Astuce WinRT] NavigateToString et le scroll

[Astuce WinRT] NavigateToString et le scroll

Si vous ajoutez sur une page WinRT un contrôle Webview et appelez NavigateToString dessus, vous perdrez le scroll à la molette de la souris sur tous les autres contrôles de la page. La raison est simple, le contrôle WebView n’est pas vraiment un contrôle et ne possède pas de méthode Focus(). A la fin d’un NavigateToString, le WebView prend le focus automatiquement et capture la molette de la souris. Pour palier à ce problème, il existe plusieurs workarounds. J’ai utilisé celui-ci:

private void WebView_GotFocus_1(object sender, RoutedEventArgs e)
{
    anotherControl.Focus(Windows.UI.Xaml.FocusState.Pointer);
}

Vous pouvez aussi utiliser le FocusManager pour décider où vous mettez le focus.
Le mauvais point à tout ça est qu’il est impossible de repasser le focus sur le WebView une fois celui-ci retiré.
Vous trouverez plus d’infos sur ce bug et d’autres contournements sur ce sujet du forum MSDN

J’ai perdu pas mal de temps sur une page complexe à trouver ce problème donc pensez-y si vous avez un problème de scroll.
Bien sûr si vous avez une meilleure solution pour contourner le problème je suis preneur n’hésitez pas à commenter🙂

Étiquettes : , ,
  1. 26/01/2013 à 11:09

    J’ n’étais pas au courant de cette onction sur le contrôle WebView .C’est la première fois et grâce votre site que je découverts la fonction de ce programme.Merci pour le partage de l’article.

  2. 20/05/2013 à 10:27

    I saw this cool post here, thank you…

  1. No trackbacks yet.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :