Создать элемент управления Browser во всплывающем окне без кражи фокуса - PullRequest
0 голосов
/ 08 апреля 2019

Мы создаем пользовательский веб-браузер, используя CefSharp WinForms (версия 71.0.2.0), и нам нужно открыть всплывающую форму, содержащую элемент управления браузера. Это всплывающее окно не должно захватывать фокус из любого другого окна, открытого пользователем (текущее приложение и любые другие, в которых он работает), но оно должно появляться перед любыми другими.

Мы успешно справились с этим в предыдущей версии приложения, в которой использовалась другая оболочка Chrome.

Что бы я ни пытался, я не могу заставить его работать.

Используя следующее:

    frm.Visible = false;
    frm.TopMost = false;
    ShowWindow(frm.Handle, SW_SHOWNOACTIVATE);
    SetWindowPos((int)frm.Handle, HWND_TOPMOST,frm.Left, frm.Top, frm.Width, frm.Height,SWP_NOACTIVATE);
    frm.Visible = true;    //So that Load event happens

показывает неактивное окно, если я не включаю в него браузер, когда я добавляю окно браузера и вызываю вышеуказанное, оно крадет фокус.

...