我想在WebBrowser控件中调用C#方法。以下是我的代码:
在XAML中,
在C#中,
预期在调试窗口中看到
当按下时,
在XAML中,
<phone:WebBrowser Margin="0,0,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
。当按下时,
window.external.notify
从未被调用。实际上,window.external
不可用。 我想从WebBrowser控件中调用window.external.notify
函数以调用 WebBrowserForDetails_ScriptNotify
方法。我该怎么办?
编辑
参考链接:MSDN:window.external.notify
、有没有办法动态设置WP7 Webbrowser控件的高度并锁定滚动?和在Windows Phone 7中显示HTML内容。