C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

PrintDialogの挙動

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■95560 / inTopicNo.1)  PrintDialogの挙動
  
□投稿者/ OA (9回)-(2020/08/18(Tue) 08:11:02)

分類:[VB.NET/VB2005 以降] 

環境:VB2019、.Net4.7.2、Windowsフォームアプリケーション

ToolStripButtonのクリックでPrintDialog.ShowDialogすると、UseEXDialogプロパティがTrueの場合、
1回クリックしないとPrintDialogがアクティブになりません。
よって、例えば印刷ボタンをクリックしたければ、まずウインドウをアクティブにする為にクリックしてから、
再度マウスクリックと、計2回クリックする必要があります。
UseEXDialogプロパティをFalseにすれば、この問題は発生しませんが、できればTrueの状態で使いたいです。
この現象を解決する方法があれば、教えてください。

    Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
        Using pd As New PrintDialog With {.UseEXDialog = True}
            pd.ShowDialog()
        End Using
    End Sub

引用返信 編集キー/
■95567 / inTopicNo.2)  Re[1]: PrintDialogの挙動
□投稿者/ 魔界の仮面弁士 (2818回)-(2020/08/18(Tue) 11:28:10)
No95560 (OA さん) に返信
> 計2回クリックする必要があります。

こんな感じでどうでしょうか。

Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
  BeginInvoke(New MethodInvoker(
    Sub()
      Using pd As New PrintDialog With {.UseEXDialog = True}
        pd.ShowDialog()
      End Using
    End Sub))
End Sub


参考資料:
https://forums.codeguru.com/showthread.php?456911
引用返信 編集キー/
■95569 / inTopicNo.3)  Re[2]: PrintDialogの挙動
□投稿者/ OA (10回)-(2020/08/18(Tue) 12:38:12)
No95567 (魔界の仮面弁士 さん) に返信

魔界の仮面弁士様、いつもご指導、ありがとうございます。
提示いただいたコードで希望動作となりました。

> 参考資料:
> https://forums.codeguru.com/showthread.php?456911
同じ質問が既にあったのですね。
検索したつもりでしたが、調査があまかったようです。
精進いたします。どうも、ありがとうございました。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ