2012-04-28 9 views
2

私はWPF WebBrowserコントロールを使用していますが、いくつかのJavaScript関数にアクセスしたいのですが、問題があります。C#WPF WebBroswerコントロール:JavaScriptの使用方法

私はInvokeScriptを使用してbrowser.InvokeScript( "alert"、 "Hello"); qを実行できますが、IDまたはTAGで要素を取得する方法、およびその要素をjavascriptに割り当てる方法var?

例: Javascript: var elements = document.getElementsByTagName( "embed"); エレメント[0] .doSomething();

C#: どうすればよいですか?

私はすべてを試しましたが、何も機能しませんでした。誰も私を助け:(

答えて

1

かなり遅く答えをすることができますが、誰がそれを必要とする場合:

直接のC#:http://msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.getelementsbytagname.aspx

HtmlElementCollection elems = webBrowser1.Document.GetElementsByTagName("embed"); 
foreach (HtmlElement elem in elems) 
    { 
     elem.InvokeMember("doSomething"); 
    } 

代替:http://msdn.microsoft.com/en-us/library/a0746166

基本的にあなたが作成する必要がありますJSの関数:

var myCustomFunc = function(tagName) { 
    var elements = document.getElementsByTagName(tagName); elements[0].doSomething(); 
} 

webBrowser1.Document.InvokeScript("myCustomFunc ", new String[] { "embed" }); 

変数 "tagNameを" とのC#から呼び出すには、

"埋め込み" に置き換えられます