tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: FORM間の値渡し
投稿日: 2007/10/09(Tue) 19:59
投稿者Hongliang
ShowDialog メソッドはダイアログが閉じるまで制御が返りませんので、
ShowDialog メソッドの返値を見れば
ダイアログでコミットしたのかキャンセルしたのかを判断できます。
ので、判断ついでに設定すればいいでしょう。
正しい返値を返すために、Form2 の方では各ボタンのクリックイベントで、
自身の DialogResult プロパティに適切な値を設定します(OK/Cancel が一般的ですかね)。
ShowDialog で開かれた場合、この DialogResult への何らかの値の代入でもって
ダイアログは閉じられますので Close の呼び出しは不要です。

Form2 は使いまわすんではなく、クリックイベントごとに New して使い終わったら Dispose を。

>また、多くの方がコード検索のプログラムを作成しているかと思いますが
> 親フォームでコードを受け取るのはf2_Closingで行うのが一般的なのでしょうか?
普通しません。
モーダルダイアログ(一般的なダイアログ)なら上記のように返値を見て判断します。
モードレスダイアログ(IE の検索窓みたいに、開いている間も元のフォームを操作できる奴)なら
イベントで通知したりします。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。