本記事はWindowsアプリケーションのTipsです。
サブフォームでボタンがクリックされたときに、親フォームに返す値を設定するには、DialogResultプロパティを使用します。
DialogResultプロパティには、表1に示すDialogResult列挙体の値を指定します。
| メンバ名 | 説明 |
|---|---|
| Abort | 中止を意味します |
| Cancel | キャンセルを意味します |
| Ignore | 無視を意味します |
| No | いいえを意味します |
| None | ダイアログボックスからNothingを返します。つまりダイアログボックスの実行が継続します。 |
| OK | OKを意味します |
| Retry | 再試行を意味します |
| Yes | はいを意味します |
サンプルを実行するにはForm1とForm2を準備して下さい。
Form1にはButtonを1個貼り付け(Button1)。
Form2にはButtonを7個貼り付け(Button1~Button7)。
Button1~Button7のTextプロパティは、順にOK,Cancel,Abort,Retry,Ignore,Yes,Noとしてください。
VBの例
'***** Form1のコード *****
'Form1 - Button1クリック時の処理
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frmDialog As New Form2
Dim Result As System.Windows.Forms.DialogResult
Result = frmDialog.ShowDialog()
MessageBox.Show(Result.ToString() & "が選択されました。")
End Sub
'***** Form2のコード *****
'Form2ロード時の処理(各ボタンに親フォームに返す値を設定)
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Button1.DialogResult = Windows.Forms.DialogResult.OK
Button2.DialogResult = Windows.Forms.DialogResult.Cancel
Button3.DialogResult = Windows.Forms.DialogResult.Abort
Button4.DialogResult = Windows.Forms.DialogResult.Retry
Button5.DialogResult = Windows.Forms.DialogResult.Ignore
Button6.DialogResult = Windows.Forms.DialogResult.Yes
Button7.DialogResult = Windows.Forms.DialogResult.No
End Sub
C#の例
'***** Form1のコード *****
'Form1 - Button1クリック時の処理
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frmDialog As New Form2
Dim Result As System.Windows.Forms.DialogResult
Result = frmDialog.ShowDialog()
MessageBox.Show(Result.ToString() & "が選択されました。")
End Sub
'***** Form2のコード *****
'Form2ロード時の処理(各ボタンに親フォームに返す値を設定)
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Button1.DialogResult = Windows.Forms.DialogResult.OK
Button2.DialogResult = Windows.Forms.DialogResult.Cancel
Button3.DialogResult = Windows.Forms.DialogResult.Abort
Button4.DialogResult = Windows.Forms.DialogResult.Retry
Button5.DialogResult = Windows.Forms.DialogResult.Ignore
Button6.DialogResult = Windows.Forms.DialogResult.Yes
Button7.DialogResult = Windows.Forms.DialogResult.No
End Sub
Please follow and like us:


コメント