2012-05-26 27 views
1

我想使用mshtml填充WPF WebBrowser页面。但是,我无法从html中找到按钮的ID。我如何找到ID?或者是否有其他选择来提交表单?在wpf网页浏览器中使用mshtml点击一个按钮(没有标识)

代码:

mshtml.HTMLDocument doc = (mshtml.HTMLDocument)browser.Document; 

try 
{  
    ((mshtml.HTMLInputElement)doc.all.item("?????")).click(); 
} 

Html页面(继续为按钮文本):

<li><a href="/uas/oauth/authenticate?oauth_token=3c708034-081f-4aca-b61c-f6518a1e0f8c&amp;trk=uas-continue" class="btn-primary">Continue</a></li> 

回答

1

WebBrowser控制WPF是从一个在WinForm不同。

System.Windows.Controls.WebBrowser控件具有Document属性,该属性获取表示托管HTML页面的Document对象。

您需要将此文档对象转换为COM接口IHTMLDocument2,然后访问文档上的所有属性以获取HTML文档中的每个元素。

mshtml.IHTMLDocument2 doc = webBrowser.Document as mshtml.IHTMLDocument2; 
doc.all.item("link")).click(); 

请参阅MSDN文章: Handling HTML Element Events

类似的帖子在这里:Accessing DOM from WebBrowser