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

わんくま同盟

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

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


(過去ログ 28 を表示中)
■13355 / )  Re[1]: Form.Show()での例外をcatchするには
□投稿者/ やじゅ (58回)-(2008/01/28(Mon) 17:01:07)
No13353 (E.S. さん) に返信
> やりたいこと
> ・モーダレスで各Formを呼び出ししたい。
> ・例外が発生してFormを閉じるのは、その例外を発生させたFormだけがよい。
> ・各Formではエラー画面を表示させる記述をしたくなく、throwするだけにしたい。
>

VB.NETですが、私の開発しているメニュー画面で下記のようにしています。
呼出しするフォームのクローズイベントをAddHandlerして、各フォームの
Closeイベントが呼ばれると、メニューのCloseイベント処理にくるので、
senderの内容からメニューか各フォ−ムかを判断して処理しています。
これと似たような考えでやればいいような気がします。

AddHandler form.FormClosed, AddressOf FormClossed
'フォームを表示
form.Show()

Private Sub FormClossed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed

If sender.Name = Me.Name Then
'メニューを破棄
  ・・・
else
'メニューより起動されたFormを破棄
Dim form As Form = CType(sender, Form)
  ・・・
end if
返信 編集キー/


管理者用

- Child Tree -