変更した内容を破棄するかどうか確認し、閉じるのをキャンセルされた場合に現状のフォームをそのまま開いた状態にしておきたい場合等、本当にフォームを閉じて良いかを確認したいことがある。
これをVB.NETで実装する方法について説明する。
対象となるフォームのFormClosingイベントを利用して実装する。
以下、サンプル。
【補足事項】
・画面の内容が変更されたかの検知は、別途、実装する必要がある。
・Closingイベントは、フォームを閉じる際に発生する。
→Me.Close()等を行ったタイミングで実行される。
・e.Cancel = Trueとすることで、キャンセルできる。
これをVB.NETで実装する方法について説明する。
対象となるフォームのFormClosingイベントを利用して実装する。
以下、サンプル。
Private Sub MainForm_FormClosing( _
ByVal sender As Object, ByVal e As _
System.Windows.Forms.FormClosingEventArgs) _
Handles Me.FormClosing
Dim Result As Windows.Forms.DialogResult
Result = MessageBox.Show("終了しますがよろしいですか?", _
"終了確認", MessageBoxButtons.YesNoCancel)
If Result = Windows.Forms.DialogResult.No Or _
Result = Windows.Forms.DialogResult.Cancel Then
e.Cancel = True
End If
End Sub
【補足事項】
・画面の内容が変更されたかの検知は、別途、実装する必要がある。
・Closingイベントは、フォームを閉じる際に発生する。
→Me.Close()等を行ったタイミングで実行される。
・e.Cancel = Trueとすることで、キャンセルできる。
- カテゴリ:
- VB.NET