0

私はWindowsアプリケーションプロジェクトを作成し、そのフォームを閉じるイベントで他のアクションを実行します。今度は、アプリケーションを閉じるために、外部から呼び出されるものを探します。アプリケーションが閉じないため、最後に古いOSでは、Windowsがシャットダウンしない

これが私のフォームイベントです:

ここでは、モニターを他のセクションで閉じます(モニターはフォームの読み込み時にのみ表示され、その部分は気にしません。数秒で終了します)

private void UserInterface_FormClosed(object sender, FormClosedEventArgs e)
        {
            if (Monitor.TryEnter(_objStop))
            {
                Monitor.Exit(_objStop);
            }
            else
            {
                Monitor.Exit(_objStop);
            }
        }

次は

private void UserInterface_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (!_flagExit)
            {
                e.Cancel = true;
                HideForm();
            }
        }

今、私はウィンドウから来るイベントを探しているので、アプリケーションが閉じることを拒否する前に_flagExistをtrueに切り替えます(代わりに通知バーで非表示にしてみてください)

4

1 に答える 1

3

CloseReasonから確認できますFormClosingEventArgs

于 2012-08-28T11:05:49.820 に答える