Domanda

Ho questa App che utilizza il controllo Webbrowser per automatizzare la navigazione.Ho bisogno di trovare un modo per chiudere automaticamente il browser (smaltire), quindi creare un'altra istanza che effettivamente funziona.

Ecco il codice che ho finora.

this.webBrowser2 = new System.Windows.Forms.WebBrowser();
this.webBrowser2.Dock = System.Windows.Forms.DockStyle.Bottom;
this.webBrowser2.Location = new System.Drawing.Point(0, 34);
this.webBrowser2.MinimumSize = new System.Drawing.Size(20, 20);
this.webBrowser2.Name = "webBrowser2";
this.webBrowser2.ScriptErrorsSuppressed = true;
this.webBrowser2.Size = new System.Drawing.Size(616, 447);
this.webBrowser2.TabIndex = 1;

Quindi stavo pensando se ho smaltire il webbrower istanza.

webBrowser2.dispose();

E quindi la creazione di una nuova istanza dell'oggetto webbrowser.

WebBrowser w = new WebBroswer();
w.Navigate(url);

Purtroppo questo non funziona.La nuova istanza del browser non e disposto oggetto del browser rimane congelato in windows form.

C'è qualcosa che sto facendo di sbagliato?

Grazie

È stato utile?

Soluzione

È necessario aggiungere e rimuovere i WebBrowsers dai Controlli del form di proprietà:

this.Controls.Remove(webBrowser2);
this.Controls.Add(w);

Se riesci, c'è anche questo articolo che ha un quasi tutorial completo per l'aggiunta e la rimozione dei controlli (non include molto sugli eventi).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top