Frage

I try to execute a javascript command like alert('test message') via GeckoFX and C# but I can not.

I try without results with Navigate and with ExecuteCommand

My code is

    int i=0;    
    GeckoWebBrowser webBrowser
    webBrowser.Navigate("alert('"+i.ToString()+"');");
    webBrowser.ExecuteCommand("alert('" + i.ToString() + "');");

Can anyone help me?

War es hilfreich?

Lösung

You can use AutoJSContext to run javascript with geckofx.

Something like:

GeckoWebBrowser browser = ....;

using (AutoJSContext context = new AutoJSContext(browser.JSContext))
{                               
   string result;
   context.EvaluateScript("3 + 2;", out result)
}

See EvaluateScript unittests for more info and examples.

If you are using a super old version of geckofx you may need to get a later version - geckofx

Andere Tipps

for the new versions instead of geckoWebBrowser1.JSContext you should write geckoWebBrowser1.Window

my code is working and I've answered with sample in another old post here

You can use Navigate method to avoid AccessViolatoinException during calling document js function:

webView.Navigate("javascript:$$external.consoleLog('message text');");
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top