gpt4 book ai didi

javascript - 在 WP7 WebBrowser 控件中从 Javascript 调用 .NET 对象

转载 作者:搜寻专家 更新时间:2023-11-01 04:55:26 26 4
gpt4 key购买 nike

是否可以从 WP7 应用程序的 WebBrowser 控件中加载的 Javascript 访问本地 Windows Phone Silverlight C#/.NET 对象?

最佳答案

不是直接的,但是 WebBrowser 中的 javascript 可以使用 window.external.notify 异步调用应用程序。应用程序可以使用 WebBrowser.ScriptNotify 检测这些通知事件,并使用 WebBrowser.InvokeScript 回调到 javascript .

这是一个(未经测试的)示例。

HTML:

<html>
<head>
<script type="text/javascript">
function beginCalculate()
{
var inputValue = parseInt(document.getElementById('inputText').value);

window.external.notify(inputValue);
}

function endCalculate(result)
{
document.getElementById('result').innerHTML = result;
}
</script>
</head>
<body>
<h2>Add 5 to a number using notify</h2>

<div>
<input type="text" id="inputText" />
<span> + 5 =</span>
<span id="result">??</span>
</div>

<input type="button" onclick="beginCalculate()" />
</body>
</html>

应用:

/// <WebBrowser x:Name="Browser" ScriptNotify="Browser_ScriptNotify" />

private void Browser_ScriptNotify(objec sender, NotifyEventArgs e)
{
int value = Int32.Parse(e.Value);

string result = (value + 5).ToString();

// endCalculate can return a value
object scriptResult = Browser.InvokeScript("endCalculate", result);
}

关于javascript - 在 WP7 WebBrowser 控件中从 Javascript 调用 .NET 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7266881/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com