在线程循环中调用JavaScript

Invoke JavaScript in thread loop

本文关键字:调用 JavaScript 循环 线程      更新时间:2023-09-26

我正在使用

this.webbrowser.InvokeScript("JS function", arguments);

调用javascript函数===>效果良好但我需要使用线程系统进行多任务

using System.Windows.Threading;

如何在线程循环中调用javascript函数??

我的项目是为无人机创建GCS(无人机地面控制站),所以我有来自无人机的地理坐标(GPS),我需要在我的windows应用程序中绘制路径。

所以我在web浏览器中加载了一个localpage代码(使用googleapi、html和javascript),这是我需要调用的JS函数(不是在我的windows应用程序中使用它,只是在我的浏览器中执行该函数):

function DrawLinePlane(lat,lon,alt){      // some code
      flightString.getCoordinates().pushLatLngAlt(lat,lon,alt); // Add LineString points.
          //some code
    }

所以基本上,当我收到新的坐标时,我必须在我的页面中调用DrawLinePlane fintion,为此,我使用了一个线程循环来接收这些坐标并绘制路径,而invokeScript在这个循环中不起作用

您必须在线程中执行以下操作:

webbrowser.Dispatcher.Invoke(new Action(() => this.webbrowser.InvokeScript("JS F", arg)));