none
<C#2013>フォームClosingイベントが発生しない RRS feed

  • 質問

  • 以下のようにアプリケーションの「X」ボタンをクリック後、
    「FormClosing」関数のイベントが発生しないで困っています。
    どうかご教授してください!

            private void frmUnbalance_FormClosing(object sender, FormClosingEventArgs e)
            {
                DialogResult result = MessageBox.Show("アプリケーションが終了されます。",
                    "",
                    MessageBoxButtons.OKCancel,
                    MessageBoxIcon.Exclamation,
                    MessageBoxDefaultButton.Button2);
                if (result == DialogResult.OK)
                {
                }
                else
                {
                    e.Cancel = true;
                }
            }

    2015年6月15日 12:45

回答

  • こんにちは。 まずサブスクライブはされていますか?デザイナからFormを選択し、プロパティウィンドウからFormClosingイベントが購読されているか確認してください
    2015年6月15日 13:26
    モデレータ
  • この FormClosing イベントはどのように追加されましたか?

    基本的にイベントハンドラを書くだけでは機能せず、イベントとイベントハンドラの結びつけが必要です。
    デザイナで Form を選択して、プロパティグリッドからイベント表示に切り替えて、FormClosing の項目からダブルクリックして追加したのであれば自動的に結びつけがされますが、そういったプロセスを経ず、上記のイベントハンドラだけをコピペと微修正で追加したのであれば、結びつけがされていません。

    上記の FormClosing のコンボボックスの下向きのマークのボタンを押すと、今回書いたイベントハンドラの名前が出てくると思いますので、選んでください。
    こうすることで、Designer.cs の方で勝手に結びつくことになります。

    こういった基本的なことではないということであれば、特別なことをやっている可能性があるので、もう少し、周辺の情報を書いてみてください。


    // VB6 の感覚でコードに書くだけでは通用しないので、入門サイトとか、入門書とか、体系だって勉強できるものを用意した方がいいと思います。
    2015年6月15日 13:29
    モデレータ

すべての返信

  • こんにちは。 まずサブスクライブはされていますか?デザイナからFormを選択し、プロパティウィンドウからFormClosingイベントが購読されているか確認してください
    2015年6月15日 13:26
    モデレータ
  • この FormClosing イベントはどのように追加されましたか?

    基本的にイベントハンドラを書くだけでは機能せず、イベントとイベントハンドラの結びつけが必要です。
    デザイナで Form を選択して、プロパティグリッドからイベント表示に切り替えて、FormClosing の項目からダブルクリックして追加したのであれば自動的に結びつけがされますが、そういったプロセスを経ず、上記のイベントハンドラだけをコピペと微修正で追加したのであれば、結びつけがされていません。

    上記の FormClosing のコンボボックスの下向きのマークのボタンを押すと、今回書いたイベントハンドラの名前が出てくると思いますので、選んでください。
    こうすることで、Designer.cs の方で勝手に結びつくことになります。

    こういった基本的なことではないということであれば、特別なことをやっている可能性があるので、もう少し、周辺の情報を書いてみてください。


    // VB6 の感覚でコードに書くだけでは通用しないので、入門サイトとか、入門書とか、体系だって勉強できるものを用意した方がいいと思います。
    2015年6月15日 13:29
    モデレータ
  • 早速の返信、ありがとうございます!VB6ユーザです。VB6コードをC#で初めて移植しようとしました。基本的なことが解ってなかったようです。

    2015年6月15日 13:49
  • 早速の返信、ありがとうございます!細かいところまで説明してくれて感謝いたします。VB6ユーザです。VB6コードをC#で初めて移植しようとしました。基本的なことが解ってなかったようです。上手くいきました。
    2015年6月15日 13:51
  • フォーラム オペレーターの星 睦美です。
    たまたまたま さん、投稿ありがとうございます。

    私のほうで[回答の候補に設定] させていただきました。フォーラムでの役立つ情報の共有や回答者への励ましになりますので、ユーザーからの回答が参考になりましたら投稿者から[回答としてマーク] をお願いいたします。
    ・フォーラムについて > マイクロソフトからのお知らせ

    フォーラム オペレーター 星 睦美 - MSDN Community Support


    • 編集済み 星 睦美 2015年6月16日 1:12 編集
    2015年6月16日 1:11