我有一个WebBrowser托管在Windows中的控件Form.该控件用于显示在运行时创建的超链接.这些链接指向一些HTML页面和PDF文档.
问题是,当加载托管浏览器控件的表单时,焦点在于表单.TAB按下该键时,焦点不会切换到第一个超链接.但是,如果我在控件上执行鼠标单击然后按下该TAB键,则选项卡焦点现在位于第一个超链接上.我试图使用Select()的WebBrowser控制,然后我打电话Focus(),但它并没有解决问题.
有关如何设置选项卡的任何想法都集中在加载时的第一个超链接?谢谢.
干杯,哈里什
Fun*_*eng 10
我想这可能是因为在页面完全加载之前设置了焦点.试试这个:
private void Go(string url)
{
webBrowser1.Navigate(url);
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
}
void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
webBrowser1.Document.Body.Focus();
}
Run Code Online (Sandbox Code Playgroud)
您还可以通过获取第一个链接直接自动选择第一个链接上的焦点HtmlElement.
如果上述方法不起作用,您可能需要检查代码的其他部分,以查看是否有其他内容正在捕获焦点.尝试搜索Select,Focus并ActiveControl在您的代码中.
在正常情况下,将控件TabIndex的 值设置为零就足够了。这样,当表单加载时,控件将获得焦点,并且按下将循环访问链接。WebBrowserTAB
请注意,您还应该更改TabIndex表单上其他控件的 。
如果这不能解决您的问题,您需要添加有关托管控件的表单的复杂性的更多详细信息。
| 归档时间: |
|
| 查看次数: |
10323 次 |
| 最近记录: |