WebBrowser InvokeScript

后端 未结 3 1650
我在风中等你
我在风中等你 2021-01-20 13:54

I have a Webrowser with some settings that are changed using javascript. I\'m trying to use the example here but can\'t get the correct syntax

the script looks like

相关标签:
3条回答
  • 2021-01-20 14:26

    Without knowing what's happening with your application's error and also not knowing what setdisplayType looks like, I'm guessing that maybe you're trying to invoke the function setdisplayType before it's been loaded. Per the MSDN documentation...

    InvokeScript(String, Object()) should not be called before the document that implements it has finished loading. You can detect when a document has finished loading by handling the LoadCompleted event.

    Maybe you can implement the LoadCompleted event handler and then invoke your script.

    Hope this helps!

    0 讨论(0)
  • 2021-01-20 14:31

    You have to pass an array of Object as second parameter. You can do it this way :

    Object[] parameters = new Object[1]; //assuming your JS function has one parameter
    parameters[0] = (Object)"yourStringParameter"; //for example the parameter is a string
    yourBrowser.Document.InvokeScript("scriptName", parameters);
    
    0 讨论(0)
  • 2021-01-20 14:48

    Try this:

    private async void web_LoadCompleted(object sender, NavigationEventArgs e)
    {
      Object[] parameters = new Object[1]; 
      await yourBrowser.Document.InvokeScript("scriptName", parameters);
    }
    
    0 讨论(0)
提交回复
热议问题