C# WinForm 与 浏览器交互:调用 JavaScript 函数
在 C# 中实现与浏览器的交互,可以使用 WebBrowser 控件。以下是一个示例代码,演示如何在 WinForm 中调用浏览器中的 JavaScript 函数:
using System;
using System.Windows.Forms;
namespace WinFormBrowserInteraction
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
// 注册 WebBrowser 控件的 DocumentCompleted 事件
webBrowser1.DocumentCompleted += WebBrowser1_DocumentCompleted;
}
private void MainForm_Load(object sender, EventArgs e)
{
// 加载页面
webBrowser1.Navigate("https://www.example.com");
}
private void WebBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
// 页面加载完成后,调用 JavaScript 函数
webBrowser1.Document.InvokeScript('myFunction', new object[] { '参数1', '参数2' });
}
}
}
在上述代码中,首先需要将一个 WebBrowser 控件添加到 WinForm 窗口中。然后在窗口的 Load 事件中,使用 Navigate 方法加载指定的页面。在页面加载完成后,通过 InvokeScript 方法调用浏览器中的 JavaScript 函数。在这个示例中,调用的函数名为 myFunction,可以传递一些参数作为函数的输入。
请注意,需要将 webBrowser1 控件的 ScriptErrorsSuppressed 属性设置为 true,以防止显示脚本错误对话框。
此外,还可以通过 Document 属性获取 WebBrowser 控件中的文档对象,以便进行更复杂的交互操作,如读取或修改 DOM 元素、执行 JavaScript 代码等。
原文地址: https://www.cveoy.top/t/topic/bLON 著作权归作者所有。请勿转载和采集!