Describe the bug
The ExplorerBrowser control prevents all other controls from processing the Tab key.
To Reproduce
Steps to reproduce the behavior:
- Install WindowsAPICodePack into .NET project via NuGet package manager
- Place one ExplorerBrowser control in main Form
- Place test TextBox in the same form, make it Multiline True and AcceptTab True
- Make single Button too, which navigates ExplorerBrowser to some existing folder, like C:\
- Run and Navigate
- After navigation try to write Tab into test TextBox. Its not possible anymore
Expected behavior
TextBox should accept Tab key no matters what ExplorerBrowser does
Desktop:
- Windows 11 64bit
- VB.NET
- Version 8.0.14
Additional context
Tried full load of copilot expertise and hacks with no results. Only hack is to Navigate, manually click into ExplorerBrowser to activate it and press serie of Tab keys manually (not SendKeys), until ExplorerBrowser concludes that user is trying to leave ExplorerBrowser control. After this serie of manual Tab presses when focus is finally transferred to my testing TextBox, whole app starts to process Tab key where and as it should. This (correct) state persists over next Navigations of ExplorerBrowser
Copilot adviced me to add this: ExplorerBrowser appears to keep IShellView in UIActivateIO(TRUE) state after first navigation, and does not call UIActivateIO(FALSE) unless user manually tabs out of the view.