会社のアプリケーションに単純な PDF ビューアを使用したかっただけです。これには AxAcroPDF を使用することにしました。それは十分に機能します。
私が修正できないように見える問題は、フォームがときどき、実際にはほとんどの場合、バックグラウンドでロードされることです。これは、コードからデバッグしている場合に特に厄介ですが、公開された場所からアプリケーションを起動した場合にも発生します。
私はもう試した:
BringToFront()
Activate()
Focus()
これはうまくいくようです:
TopMost = True
しかし、実際にはフォーム自体に焦点を当てているわけではありません。私はそれが何に焦点を合わせているのか分かりません.おそらくAxAcroPDFコントロールですか?さらに重要なことは、アプリケーションが常に最上位にあることを望まないことです。
この問題に対処する方法はありますか?
## アップデート ##
私は何とかそれを機能させることができましたが、ハッキーです。
1.) タイマーを作成し、600ms/有効に設定します。
2.) Form_Load の最後に、次のように設定しました。
TopMost = True
3.) タイマー ティック イベント ハンドラー:
Private Sub tTimerTest_Tick(sender As Object, e As EventArgs) Handles tTimerTest.Tick
TopMost = False
Activate()
tTimerTest.Enabled = False
End Sub
これは「うまくいく」と思いますが、特にPDFビューアなど、コントロールをさまざまな速度でロードするものがあるため、すべてのコンピューターで一貫しているとは思えません。
これはまだ適切な/一貫した修正ではありません。:\