2012-06-30 10 views

Respuesta

42
webBrowser1.Navigate("http://www.google.com"); 

Si usted tiene un uso ID esto:

webBrowser1.Document.GetElementById("id").InvokeMember("click"); 

Si tiene TagName uso de este

webBrowser1.Navigate("http://www.google.com"); 

en explorador de Web DocumentCompleted caso

HtmlElement textElement = webBrowser1.Document.All.GetElementsByName("q")[0]; 
textElement.SetAttribute("value", "your text to search"); 
HtmlElement btnElement = webBrowser1.Document.All.GetElementsByName("btnG")[0]; 
btnElement.InvokeMember("click"); 

Si tiene nombre Class uso esto:

HtmlElementCollection classButton = webBrowser1.Document.All; 
foreach (HtmlElement element in classButton) 
{ 
    if (element.GetAttribute("className") == "button") 
    { 
     element.InvokeMember("click"); 
    } 
} 

Para añadir texto en un TextBox para buscar google.com, utilice esto:

webBrowser1.Document.GetElementById("gs_tti0").InnerText = "hello world"; 
+0

shdocvw y mshtml también puede venir usarse !! – xameeramir

+0

Lo sentimos pero ¿qué es 'webBrowser'? –

+1

@KyleKhalaf Creo que quiso decir "webBrowser1" – hhk

2

Pruebe el siguiente código:

public WebBrowser webBrowser1 = new WebBrowser(); 
    private void WebForm_Load(object sender, EventArgs e) 
     { 
      try 
      { 
       webBrowser1.Height = 1000; 
       webBrowser1.Width = 1000; 
       this.Controls.Add(webBrowser1); 
       webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(WebBrowser_DocumentCompleted); 
       this.webBrowser1.Navigate("www.google.com.au"); 
      } 
      catch 
      { } 

apunte la siguiente función en su # Forma C:

public void WebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
    { 
     var webBrowser = sender as WebBrowser; 
     webBrowser.DocumentCompleted -= WebBrowser_DocumentCompleted; 

     HtmlElement textElement = webBrowser.Document.All.GetElementsByName("q")[0]; 
     textElement.SetAttribute("value", "mlm company"); 
     HtmlElement btnElement = webBrowser.Document.All.GetElementsByName("btnG")[0]; 
     btnElement.InvokeMember("click"); 


    } 
0

Además de utilizar InvokeMember y otros, si su página web tiene problemas de responder al llamado por ID o Class, puede probar a usar {TAB} & {ENTER} usando la clase SendKeys dentro de .NET. He escrito muchos guiones para páginas web y he descubierto que he tenido que usar una combinación de ambos (aunque SendKeys es mucho más complicado que los métodos en la respuesta de @ AleWin).

Here is the link to the SendKeys class.

Cuestiones relacionadas