提前致谢。
在我的 WPF 应用程序中,我能够使用 WebBrowser 的 InvokeScript(String, Object[]) 方法成功地将消息从 WPF 传递到 JavaScript。我在 Object[] 参数中传递了我的消息,JS 代码很好地接受了它。(见下面的代码)
我如何在 WebView2 中实现相同的功能,有什么方法可以像在 WebBrowser 控件中一样将参数传递给 JS 代码?
窗口.xaml
<Grid>
<DockPanel>
<StackPanel>
<TextBox x:Name="txtMessageFromWPF" Width="150" FontSize="20"></TextBox>
<Button x:Name="btnCallDocument" Click="btnCallDocument_Click" Content="CallDocument" />
</StackPanel>
<WebBrowser x:Name="webBrowser" DockPanel.Dock="Top" Margin="30"/>
</DockPanel>
</Grid>
窗口.xaml.cs
private void btnCallDocument_Click(object sender, RoutedEventArgs e)
{
webBrowser.InvokeScript("WriteMessageFromWPF", new object[] { this.txtMessageFromWPF.Text });
}
JS代码:
<script type="text/javascript">
function getAlert()
{
alert("Hi the page is loaded!!!");
}
window.onload = getAlert;
function WriteMessageFromWPF(message){
document.write("Message from WPF: " + message);
}
</script>