Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何始终保持浏览器的焦点_C#_Geckofx - Fatal编程技术网

C# 如何始终保持浏览器的焦点

C# 如何始终保持浏览器的焦点,c#,geckofx,C#,Geckofx,当我单击单选按钮或浏览选项卡时,geckofx web浏览器失去了焦点。我可以使用browser.focus()返回焦点,但如果有两个选项卡,例如1tab和2tab,则效果会很好。在2tab上是我的网络浏览器。当我转到tab1时,tab2中的浏览器会失去焦点,命令browser.focus()无法工作。每次我在UI上做一些事情时,gecko都会失去焦点,这真的很烦人。有没有办法让我的注意力始终集中 谢谢 编辑: 我考虑过让UI元素不聚焦于它们,这样浏览器就不会失去焦点。 找到这个,使用那个类,它

当我单击单选按钮或浏览选项卡时,geckofx web浏览器失去了焦点。我可以使用browser.focus()返回焦点,但如果有两个选项卡,例如1tab和2tab,则效果会很好。在2tab上是我的网络浏览器。当我转到tab1时,tab2中的浏览器会失去焦点,命令browser.focus()无法工作。每次我在UI上做一些事情时,gecko都会失去焦点,这真的很烦人。有没有办法让我的注意力始终集中

谢谢

编辑: 我考虑过让UI元素不聚焦于它们,这样浏览器就不会失去焦点。
找到这个,使用那个类,它与按钮一起工作。我会试着在标签上这样做。

很简单。首先将此代码添加到
表单\u load

private void Form1_Load(object sender, EventArgs e)
        {
            webBrowser1.TabIndex = 0;
            webBrowser1.Focus();
        }
然后将所有其他控件的Tabstop属性设置为false。在每个控件单击事件时添加以下代码:
webBrowser1.Focus()

例如,我将此代码用于Button和RadioButton

private void radioButton1_Click(object sender, EventArgs e)
    {
        radioButton1.TabStop = false;
        webBrowser1.Focus();
        webBrowser1.LostFocus += webBrowser1_LostFocus;
    }

    private void button1_Click(object sender, EventArgs e)
    {
        button1.TabStop = false;
        webBrowser1.Focus();
        webBrowser1.LostFocus += webBrowser1_LostFocus;
    }
对窗体中的所有其他控件执行此操作。您还需要为此定义
webBrowser1\u LostFocus
void

void webBrowser1_LostFocus(object sender, EventArgs e)
    {
        webBrowser1.Focus();
    }
更新:你也可以为聚焦留出空间。然后在你想要的任何地方使用这个空白。试试这个:

public void SetFocus(Control webbrowser)
{
 // Set focus to the control. 
   if(webbrowser.CanFocus)
   {
      webbrowser.Focus();
   }
}

你试过答案了吗?我真的试过放.Focus();到处都是。当我的浏览器失去焦点时,它会再次快速打开焦点。我想要实现的是永远不要放松对浏览器的关注。我尝试了javascripts,并试图使所有UI元素都不可聚焦,但这并不奏效。谢谢你的帮助。是的,谢谢。因为我找不到任何其他方法让浏览器保持专注,所以我会将此标记为答案。再次感谢。