c# – 在WebBrowser控件中,window.external不可用

我想在Webbrowser控件中调用C#方法.以下是我的代码

在XAML中,

<phone:Webbrowser Margin="0,0" Name="WebbrowserForDetails" VerticalAlignment="Top" Height="300" ScriptNotify="WebbrowserForDetails_ScriptNotify" IsScriptEnabled="True" />

在C#中,

protected override void OnNavigatedTo(NavigationEventArgs e)
{

    string html = string.Format("<html><head><title></title><script type=\"text/javascript\">{0}</script></head><body><button onclick=\"call();\">Push</button>","function call(){ window.external.notify(123) ;}");
    WebbrowserForDetails.NavigatetoString(html);
}

private void WebbrowserForDetails_ScriptNotify(Object sender,NotifyEventArgs e)
{
    Debug.WriteLine(e.Value);
}

预计在调试窗口中看到123.

当< button> Push< / button>被推,window.external.notify永远不会被调用.实际上,window.external不可用.我想从Webbrowser控件调用window.external.notify函数调用WebbrowserForDetails_ScriptNotify方法.我该怎么办?

编辑

参考链接MSDN: window.external.notify,Any way to set the WP7 Webbrowser control height Dynamically and lock scrolling?Displaying HTML Content in Windows Phone 7

解决方法

你的代码看似正确,但window.external.notify()方法是String参数,而不是Integer.请尝试使用window.external.notify(‘123’)调用. 希望这可以帮助.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...