1

私のプログラムには、ユーザーがメインフォームのスクリーンダンプを作成できる機能があります。これを行うには、ユーザーはメニューから [ファイル] | [ファイル] を選択する必要があります。スクリーンダンプを取ります。これは機能します。ただし、ドロップダウン メニューは開いたままになり、スクリーンダンプが取得されたときに部分的に表示されます。ただし、他のいくつかのコントロールはその上にあります。スクリーンショットを撮る前にドロップダウンを確実に閉じるにはどうすればよいですか?

メニューとメニュー項目の両方に HideDropDown() を含めようとしましたが、どちらも役に立ちません。メニュー全体を非表示にしようとしましたが、運もありません。

private void toolStripMenuItem_screenDumpProgram_Click(object sender, EventArgs e)
{
    ... HideDropDown() ... various tests

    Bitmap screendump = new Bitmap(Width, Height);
    Graphics gfx = Graphics.FromImage(screendump);
    gfx.CopyFromScreen(Location, Point.Empty, Size);

    screendump.Save("MyScreenshot.png", ImageFormat.Png);
}

この問題を回避する方法はありますか?

4

1 に答える 1