ExceptionMessageBox.CheckBoxRegistryKey プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
開いている RegistryKey を設定して、ShowCheckBox が true の場合に例外メッセージ ボックスに表示されるチェック ボックスを制御します。
public:
property Microsoft::Win32::RegistryKey ^ CheckBoxRegistryKey { Microsoft::Win32::RegistryKey ^ get(); void set(Microsoft::Win32::RegistryKey ^ value); };
public Microsoft.Win32.RegistryKey CheckBoxRegistryKey { get; set; }
member this.CheckBoxRegistryKey : Microsoft.Win32.RegistryKey with get, set
Public Property CheckBoxRegistryKey As RegistryKey
プロパティ値
RegistryKey が true の場合に例外メッセージ ボックスに表示されるチェック ボックスを制御する ShowCheckBox です。
例
try
{
// Do something that could generate an exception.
throw new ApplicationException("An error has occured.");
}
catch (ApplicationException ex)
{
string str = "The action failed. Do you want to continue?";
ApplicationException exTop = new ApplicationException(str, ex);
exTop.Source = this.Text;
// Show a message box with Yes and No buttons
ExceptionMessageBox box = new ExceptionMessageBox(exTop,
ExceptionMessageBoxButtons.YesNo,
ExceptionMessageBoxSymbol.Question,
ExceptionMessageBoxDefaultButton.Button2);
// Enable the check box.
box.ShowCheckBox = true;
// Define the registry key to use.
box.CheckBoxRegistryKey =
Microsoft.Win32.Registry.CurrentUser.CreateSubKey(
@"Software\TestApp");
box.CheckBoxRegistryValue = "DontShowActionFailedMessage";
box.CheckBoxRegistryMeansDoNotShowDialog = true;
box.DefaultDialogResult = DialogResult.Yes;
// The message box won't be displayed if the
// "DontShowActionFailedMessage" value of the registry key
// contains a non-zero value.
if (box.Show(this) == DialogResult.No)
{
// Do something if the user clicks the No button.
this.Close();
}
}
Try
' Do something that could generate an exception.
Throw New ApplicationException("An error has occured.")
Catch ex As ApplicationException
Dim str As String = "The action failed. Do you want to continue?"
Dim exTop As ApplicationException = New ApplicationException(str, ex)
exTop.Source = Me.Text
' Show a message box with Yes and No buttons
Dim box As ExceptionMessageBox = New ExceptionMessageBox(exTop, _
ExceptionMessageBoxButtons.YesNo, _
ExceptionMessageBoxSymbol.Question, _
ExceptionMessageBoxDefaultButton.Button2)
' Enable the check box.
box.ShowCheckBox = True
' Define the registry key to use.
box.CheckBoxRegistryKey = _
Microsoft.Win32.Registry.CurrentUser.CreateSubKey( _
"Software\TestApp")
box.CheckBoxRegistryValue = "DontShowActionFailedMessage"
box.CheckBoxRegistryMeansDoNotShowDialog = True
box.DefaultDialogResult = Windows.Forms.DialogResult.Yes
' The message box won't be displayed if the
' "DontShowActionFailedMessage" value of the registry key
' contains a non-zero value.
If box.Show(Me) = Windows.Forms.DialogResult.No Then
' Do something if the user clicks the No button.
Me.Close()
End If
End Try
注釈
このプロパティでは、CheckBoxRegistryValue が使用され、チェック ボックスのオンの状態が初期化されます。 指定されたレジストリ値が存在し、0 ではない値が含まれる場合は、チェック ボックスがオンの状態で表示されます。それ以外の場合は、チェック ボックスがオフの状態で表示されます。
CheckBoxRegistryMeansDoNotShowDialog が true で、レジストリ値が存在しており、0 ではない値が含まれる場合は、メッセージ ボックスが表示されず、ExceptionMessageBox が呼び出される際に DefaultDialogResult により Show が返されます。
RegistryKey は、Show を呼び出す前にアプリケーションによって開かれる必要があります。