私は、embeddeb Browser コントロールを含む WinForm を作成しました。Web ブラウザー コントロールにある Web ページでイベントが発生した場合、アプリケーションにフォーカスを合わせて画面の前面に表示します。
私は progressChanged イベントを使用していますが、それは正常に機能しますが、私のアプリケーションはすべての前面に表示されず、フォーカスされません。
これが私のコードです
private void FBrowser_ProgressChanged(object sender, WebBrowserProgressChangedEventArgs e)
{
BringToTheFront();
}
private void BringToTheFront()
{
//this.WindowState = FormWindowState.Maximized;
FBrowser.BringToFront();
this.TopMost = true;
this.Show();
this.Activate();
this.BringToFront();
//this.Activate();
//System.Threading.Thread.Sleep(10000);
this.TopMost = false;
}
私はすべてを試しましたが、時々うまくいきますが、いつもうまくいくとは限りません。
ウィンドウを前に持ってくるのは悪い振る舞いであることは知っていますが、これが起こることは重要です。