2017-02-15 62 views
1

我有一個WebBrowser控件連接到一個網站,並解析HTML來採取行動。你如何點擊ngbricks與webbrowser winforms控件

我來到這個標籤:

<div class="col-xs-6 col-sm-2 col-md-2 grid_row grid_row_border_left grid_col_select ng-binding" ng-click="vmFASummary.navigateToDetails(summaryRow)" tabindex="0">01/2017</div> 

我需要執行的點擊NG-點擊進入下一個頁面。

我已經試過這些代碼片段無濟於事。

MethodInfo clickMethod = wbrElm.GetType().GetMethod("ng-click"); 
    clickMethod.Invoke(wbrElm, null); 
    ----------------------------------------------- 
    webBrowser1.DocumentCompleted += (s, e) => 
    { 
     webBrowser1.Document.InvokeScript("vmFASummary.navigateToDetails", new object[] { true }); 
    }; 
    ------------------------------------------------ 

    System.Windows.Forms.Application.DoEvents(); 
    wbrElm.Document.InvokeScript("vmFASummary.navigateToDetails", new String[] { "summaryRow" }); 
    ----------------------------------------------- 
    wbrElm.RaiseEvent("ng-click"); 
    ----------------------------------------------- 
    wbrElm.InvokeMember("click"); 

回答

1

嘗試這樣:

var links = webBrowser1.Document.GetElementsByTagName("div"); 
       foreach (HtmlElement link in links) 
       { 
        if(link !=null) 
        { 

         if (link.GetAttribute("ng-click").Equals("vmFASummary.navigateToDetails(summaryRow)")) 
         { 

          link.InvokeMember("Click"); 
         } 
        } 
       }