liolio111
Messages postés7Date d'inscriptionmercredi 31 août 2005StatutMembreDernière intervention21 octobre 2008
-
20 oct. 2008 à 18:36
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
21 oct. 2008 à 16:45
Bonjour,
J'utilise un contrôle WebBrowser pour afficher un PDF. Après le chargement du PDF par la méthode Navigate, le contrôle WebBrowser conserve le focus.
Alors que me.activecontrol me retourne un autre contrôle (par exemple une DataGridView). WebBrowser garde le focus pcq quand on fait Flèche haute/Flèche basse, c'est le pdf qui scrolle.
Pour redonner le focus au contrôle ayant chargé le pdf, il faut faire Alt+Tab deux fois.
La méthode .focus ne marche pas.
liolio111
Messages postés7Date d'inscriptionmercredi 31 août 2005StatutMembreDernière intervention21 octobre 2008 21 oct. 2008 à 08:22
Salut PCPT
Je teste le focus après l'événement DocumentCompleted. Je redonne le focus à mon premier contrôle. Mais il ne l'a réellement que si je fais Alt+Tab 2 fois. Sinon si je fais flèche basse ou flèche haute, c'est le webbrowser qui réagit.
J'ai essayé aussi de mettre le webbrowser dans un panel que je rend disabled avant le navigate, et que je remet enabled dans le DocumentCompleted mais ça ne marche pas. J'ai l'impression que c'est après cet événement, que le WebBrowser reprend le focus. Si je déclenche un timer qui redonne le focus à mon contrôle 1 seconde après la fin du DocumentCompleted, ça marche.
liolio111
Messages postés7Date d'inscriptionmercredi 31 août 2005StatutMembreDernière intervention21 octobre 2008 21 oct. 2008 à 13:46
Non c'est pareil.
Je pense que c'est lié au PDF : le WebBrowser utiliser le contrôle ActiveX d'adobe pour afficher le pdf. Et c'est après le Completed que le webbrowser reprend la main. Est-ce qu'on ne peut pas intercepter les événements sur cet activex ?
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 21 oct. 2008 à 16:01
j'ai un doute....
en plus en VB.NET là aucune idée
mais ton énoncé est plus clair, ce n'est pas directement le webbrowser mais au final directement le fichier lu
et en désactivant (enabled) uniquement le webbrowser çà donne quoi?
ou peut-être possible de jouer sur l'évènement Getfocus (ou assimilé) du webbrowser?
c'est plus de ce côté là que je chercherais...
<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
liolio111
Messages postés7Date d'inscriptionmercredi 31 août 2005StatutMembreDernière intervention21 octobre 2008 21 oct. 2008 à 16:21
La propriété Enabled n'existe pas sur le contrôle WebBrower. Mais j'ai essayé de le mettre dans un Panel que je rend disabled avant le navigate (ou après) puis enabled au Completed. Ca ne marche pas parce que c'est après tout ça que le WebBrowser prend le focus.
Ou plus exactement c'est l'activex.
Sais-tu ce qu'on peut faire avec WndProc ? on ne peut pas voir le message qui donne le focus au webbrowser.