デスクトップアプリケーションでPrintDialogを使用しています。Buttonまたはコンテキストメニューから呼び出されると、正常に機能します。しかし、PrintDialogを呼び出すためにツールチップボタンをクリックすると、printdialogウィンドウがアクティブであるにもかかわらず、印刷ボタンにフォーカスが移りません。印刷物を取得するには、2回クリックする必要があります。
私が得た解決策は、デリゲートでBeginInvokeを使用して非同期を呼び出すことです。これで、次のコードでフォーカスを取得できます。
ShowThePrintDialog printD = new ShowThePrintDialog(p.ShowDialog); this.BeginInvoke(printD);
DialogResultをキャプチャし、printdialogでクリックされたボタンに基づいてさらに進みます。
BeginInvokeの使用中にDialogResultをキャプチャする方法を教えてもらえますか?
ラマン