c# - C# WebBrowser 对象中的 HTML/Javascript 文件本地加载未正确加载?

标签 c# javascript wpf browser

我正在使用 .NET Framework 4.0(带有 WPF)尝试在 WebBrowser 对象 (System.Windows.Controls.WebBrowser) 中加载本地 HTML 文件,同时使用本地嵌入的 javascript 和从远程服务器加载的文件。问题是,javascript(带有 dojo 的 ajax)在加载时并未在 WebBrowser 对象内部执行:

webBrowser.NavigateToString(LoadStringFromFile("map.html"));

但是,当远程加载时,它运行得很好,如下所示:

webBrowser.Navigate("http://www.example.com/map.html");

html文件中的Javascript代码示例摘录:

<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.6"></script>
<script type="text/javascript">
dojo.require("esri.map");

var map;

var colorRGB = { "white": [255,255,255], "red": [255,0,0], "blue": [0,255,0] };

function init()
{
    var streetLayer = new esri.layers.ArcGISTiledMapServiceLayer(
        "http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer");

    var extent = new esri.geometry.Extent(-140.910, 11.267, -53.019, 64.002);
    map = new esri.Map("map", { extent:extent });

    map.addLayer(streetLayer);

    dojo.connect(map,"onLoad", processLocations);
}

有人知道这有什么问题吗?

我的研究表明它与 IE 和互联网区域有关,但无法证实。

最佳答案

当我将其粘贴到一个 html 文件中并在 Internet Explorer 上打开时,它会显示一条消息,指出它阻止了 activex/script 内容。更改 Internet 选项 > 高级 > 安全 > 允许事件内容在我的电脑上的文件中运行。如果警告在 IE 中消失,那么它应该在 WebBrowser 对象中工作

关于c# - C# WebBrowser 对象中的 HTML/Javascript 文件本地加载未正确加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5775853/

相关文章:

c# - 根据对 Azure 应用程序网关的传入请求触发 Azure Function

c# - 使用 mono 编译应用程序

Javascript 日期添加一个月

javascript - 如何使用javascript更改具有同一类的多个div的宽度?

javascript - 这种设计模式在 JavaScript 中称为什么?

WPF ListView 设置 SelectedItem

c# - 从 ViewModel 了解数据绑定(bind)

c# - 在 C# 中的 BouncyCaSTLe 中构建证书链

c# - 在托管代码中使用 win32

c# - 只允许是或否作为答案