複数の子フォームから親フォームを「終了」させる時に処理を指定したい – プログラミング – Home

複数の子フォームから親フォームを「終了...
 

[解決済] 複数の子フォームから親フォームを「終了」させる時に処理を指定したい  

  RSS

なおぞう
 なおぞう
(@なおぞう)
ゲスト
参加済み: 4年 前
投稿: 143
2016年7月29日 7:01 PM  

よろしくお願いします。
C# VS2010で開発しております。

親フォームA
子フォームB
子フォームCと有りまして。

Bを終了する際に親Aを終了させるのですが、Bの時は親フォームで「本当に終わらせま
すか」というメッセージを出して確認。
Cを終了する場合には、問答無用で親Aを終了させたいのです。

親フォームのClose()を呼んだときに、A_FromClosing()で、Bからの終了要求だったら確
認メッセージを出す。Cだったら出さないとしたいので、どの子フォームからClose()要
求がでたか知る方法を教えていただきたいです。

よろしくお願い致します。


引用未解決
トピックのタグ
YuO
 YuO
(@YuO)
ゲスト
参加済み: 16年 前
投稿: 320
2016年7月30日 1:24 AM  

FormBやFormCがFormA.Closeを直接呼ぶのではなく,
FormA.ForceCloseやFormA.ConfirmCloseというメソッドを用意しておいて,
FormBはFormA.ConfirmCloseを,FormCはForceCloseを呼ぶようにします。

そして,ConfirmCloseは確認メッセージを出して必要なら閉じる,
ForceCloseは確認メッセージを出さずに閉じれば良いです。


返信引用
なおぞう
 なおぞう
(@なおぞう)
ゲスト
参加済み: 4年 前
投稿: 143
2016年8月5日 9:09 PM  

>YuO様

アドバイスありがとうございました。
既存プログラムがあって、Closeの処理を大きく変えることができなかったので、外部変
数をもたせて、親フォームではどの子フォームからCloseが来たか判断する事で対応しま
した。


返信引用

返信する


Preview 0 Revisions Saved
Share:

ログイン または 登録 してください

タイトルとURLをコピーしました