c# - 网络浏览器窃取焦点

标签 c# .net winforms focus browser

我在我的 winforms 应用程序 (c#) 中使用网络浏览器控件。当它在做自动化的事情时,我正在失去对我正在使用的窗口的焦点控制。 Webbrowsers 的表单也没有显示,我只是失去了控制的焦点。我现在正在写这条消息,我必须一次又一次地点击文本框...

如何在网络浏览器中禁用此类行为?

我像那样创建了不可见的网络浏览器:

var br = new WebBrowser();
br.Visible = false;
br.ScriptErrorsSuppressed = true;

请指教。

最佳答案

我遇到了同样的问题:

加载 URL 后,Webbrowser 控件从应用程序中窃取焦点。

这对我有用:

  1. Webbrowser.Navigate() 方法调用之前,将 Webbrowser 的父控件设置为 Enabled = false
  2. 在 Webbrowser 的 DocumentCompleted 事件中,将 Webbrowser 的父控件重置为 Enabled = true

您不能直接在 Webbrowser 上执行此操作,因为不支持 WebBrowserBase.Enabled

让我知道它是否适合您。

关于c# - 网络浏览器窃取焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8495857/

相关文章:

c# - HttpClient.SendAsync 使用线程池而不是异步 IO?

c# - 来自 SQLiteConnection 对象的 SQLite .dump 命令

c# - HttpClient的多种实现

c# - FileInfo.Delete 中的异常 - IOException

java - 将 python 与其他语言(.Net、Java ....)集成的机制是什么

c# - Winforms Entity Framework

c# - TextInfo.ToTitleCase 对于全部大写字符串没有按预期工作

c# - 当我使用 Control-C 中断 C# 控制台应用程序时会发生什么?

c# - WinForms C#中自定义对象类型的跨进程拖放

c# - Windows 窗体 C# 中的字体模糊