You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#如何编程实现Microsoft Edge在同一标签页打开指定网页

Edge 浏览器同标签页导航控制实现方案

可以实现,只不过 Edge 不再支持 IE 时代的 SHDocVw.ShellWindows COM 接口,常用的实现方式分为两种,分别对应不同的使用场景:

场景1:桌面端自动化控制外部 Edge 浏览器

用微软官方适配的 Selenium Edge WebDriver 方案即可实现和你原来 IE 逻辑完全一致的效果,匹配指定URL的标签页后在同标签加载新地址,示例代码如下(C#):

using OpenQA.Selenium;
using OpenQA.Selenium.Edge;

// 前置条件:Edge浏览器启动时已加参数 --remote-debugging-port=9222
var edgeOptions = new EdgeOptions();
edgeOptions.DebuggerAddress = "localhost:9222";

using var driver = new EdgeDriver(edgeOptions);
// 遍历所有打开的标签页
foreach (var windowHandle in driver.WindowHandles)
{
    driver.SwitchTo().Window(windowHandle);
    if (driver.Url.Contains(matchUrl))
    {
        // 同标签页导航到目标地址
        driver.Navigate().GoToUrl(originalUrl);
        break;
    }
}

使用注意事项:

  • 需要提前安装对应NuGet包:Selenium.WebDriver、Selenium.WebDriver.MSEdgeDriver
  • 确保EdgeDriver版本和本地安装的Edge浏览器主版本号一致,否则会出现兼容性问题

场景2:应用内嵌入Edge WebView2控件

如果你是在自己的WinForm/WPF/WinUI3等应用内嵌入Edge WebView2展示网页,直接调用WebView2控件的原生方法即可:

// webView2为你的应用内WebView2控件实例
webView2.CoreWebView2.Navigate(originalUrl);

内容的提问来源于stack exchange,提问作者jerry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 14:06:04