WebBrowser: exécution de commandes quand page chargée

Résolu
altozinzin Messages postés 54 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 mai 2011 - 27 mars 2011 à 18:45
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 29 mars 2011 à 06:44
Salut à tous!!

Voila, j'ai un webBrowser qui se lance lorsqu’on clique sur mon bouton.
Je veux ensuite qu'une série de commande soit lancée quand la page est chargé.
Je ne veux pas faire de méthode type:

 private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {

            MessageBox.Show("c'est chargé", "test", MessageBoxButtons.OK);
        }


Le problème c'est que j'aurai un MessageBox à chaque fois que la page est complétée (c'est à dire en gros à chaque 'mise à jour' de la page).


Je voudrais que mes commandes ne se lance que lorsque je clique sur le bouton et que la page est chargée. En gros je voudrais un truc du genre (je sais que ce que je vais écrire est scandaleux, mais c'est juste pour donner une idée de ce que je voudrais faire):



 private void button1_Click(object sender, EventArgs e)
        {
          
            webBrowser1.Navigate("http://www.google.fr");
            
            if (webBrowser1.DocumentCompleted == true)
            {
                MessageBox.Show("test", "test", MessageBoxButtons.OK);
            }
           
                    
        }


J’espère avoir été clair.
Merci d'avance pour votre aide.
A voir également:

3 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
28 mars 2011 à 09:46
de tete, je n'ai pas le terme exact pour le ...Complete

mais suffit de faire :

while (WebBrowser1.readystate!=...COMPLETE)
Application.DoEvents();


Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
3
altozinzin Messages postés 54 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 mai 2011
28 mars 2011 à 20:57
Ca marche, merci beaucoup!!!

Voila le code pour ceux que ça intéresserait:



while (webBrowser1.ReadyState.ToString() != "Complete")
            {
                Application.DoEvents();

            }
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
29 mars 2011 à 06:44
non, ce n'est pas ainsi qu'il vaut mieux le coder:
inutile de passer par un String.

while(webBrowser1.ReadyState != WebBrowserReadyState.Complete)
    Application.DoEvents();


Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
0
Rejoignez-nous