ExceptionMessageBox Class

Displays a message box that can be customized with text, buttons, and symbols to improve the customer experience with a Microsoft Windows .NET Framework-based application.

Inheritance Hierarchy

System.Object
  Microsoft.SqlServer.MessageBox.ExceptionMessageBox

Namespace:  Microsoft.SqlServer.MessageBox
Assembly:  Microsoft.ExceptionMessageBox (in Microsoft.ExceptionMessageBox.dll)

Syntax

'Declaration
<ComVisibleAttribute(False)> _
Public Class ExceptionMessageBox
'Usage
Dim instance As ExceptionMessageBox
[ComVisibleAttribute(false)]
public class ExceptionMessageBox
[ComVisibleAttribute(false)]
public ref class ExceptionMessageBox
[<ComVisibleAttribute(false)>]
type ExceptionMessageBox =  class end
public class ExceptionMessageBox

The ExceptionMessageBox type exposes the following members.

Constructors

  Name Description
Public method ExceptionMessageBox() Creates an instance of ExceptionMessageBox with the default properties.
Public method ExceptionMessageBox(Exception) Creates an instance of ExceptionMessageBox by using information from the specified Exception.
Public method ExceptionMessageBox(String) Creates an instance of ExceptionMessageBox with the supplied top-level error message text.
Public method ExceptionMessageBox(Exception, ExceptionMessageBoxButtons) Creates an instance of ExceptionMessageBox by using information from the specified Exception and by specifying the buttons to display in the message box.
Public method ExceptionMessageBox(String, String) Creates an instance of ExceptionMessageBox with the supplied top-level error message text and the dialog box caption of the exception message box.
Public method ExceptionMessageBox(Exception, ExceptionMessageBoxButtons, ExceptionMessageBoxSymbol) Creates an instance of ExceptionMessageBox by using information from the specified Exception and by specifying the buttons and symbol to display in the message box.
Public method ExceptionMessageBox(String, String, ExceptionMessageBoxButtons) Creates an instance of ExceptionMessageBox with the supplied top-level error message text and the dialog box caption of the exception message box. The method also specifies buttons to display in the exception message box.
Public method ExceptionMessageBox(Exception, ExceptionMessageBoxButtons, ExceptionMessageBoxSymbol, ExceptionMessageBoxDefaultButton) Creates an instance of ExceptionMessageBox by using information from the specified Exception and by specifying the buttons, symbol, and default button to display in the exception message box. .
Public method ExceptionMessageBox(String, String, ExceptionMessageBoxButtons, ExceptionMessageBoxSymbol) Creates an instance of ExceptionMessageBox with the supplied top-level error message text and dialog box caption of the exception message box. The method also specifies the buttons and symbol to display in the exception message box.
Public method ExceptionMessageBox(Exception, ExceptionMessageBoxButtons, ExceptionMessageBoxSymbol, ExceptionMessageBoxDefaultButton, ExceptionMessageBoxOptions) Creates an instance of ExceptionMessageBox by using information from the specified Exception and by specifying the buttons, symbol, default button, and other properties to display in the exception message box.
Public method ExceptionMessageBox(String, String, ExceptionMessageBoxButtons, ExceptionMessageBoxSymbol, ExceptionMessageBoxDefaultButton) Creates an instance of ExceptionMessageBox with the supplied top-level error message text and dialog box caption of the message box. The method also specifies the buttons, symbol, and default button to display in the exception message box.
Public method ExceptionMessageBox(String, String, ExceptionMessageBoxButtons, ExceptionMessageBoxSymbol, ExceptionMessageBoxDefaultButton, ExceptionMessageBoxOptions) Infrastructure. Creates an instance of ExceptionMessageBox with the supplied top-level error message text and dialog box caption of the message box. The method also specifies the buttons, symbol, default button, and dialog options to display in the exception message box.

Top

Properties

  Name Description
Public propertyStatic member AbortButtonText Gets the default text for the Abort button.
Public property Beep Specifies whether to play an audible sound when the message is displayed.
Public property Buttons Gets or sets the buttons to display in the message box.
Public propertyStatic member CancelButtonText Gets the default text for the Cancel button.
Public property Caption Gets or sets the dialog box caption of the exception message box.
Public property CheckBoxRegistryKey Sets an opened RegistryKey that controls the check box that is displayed on the exception message box when ShowCheckbox is true.
Public property CheckBoxRegistryMeansDoNotShowDialog Determines whether the registry value content specified by CheckBoxRegistryKey and CheckBoxRegistryValue indicates a previous user decision not to view this message.
Public property CheckBoxRegistryValue Gets or sets the registry value name that controls the check box on the exception message box when ShowCheckbox is true.
Public property CheckBoxText Gets or sets the text to display in the check box on the exception message box when ShowCheckbox is true.
Public property CustomDialogResult Gets the clicked custom text dialog button.
Public property CustomSymbol Gets or sets a custom bitmap to use as the symbol on the exception message box.
Public property Data Gets the IDictionary interface that stores help link and advanced information associated with the top-level message.
Public property DefaultButton Gets or sets the default button on the message box.
Public property DefaultDialogResult Gets or sets the value returned by the Show method when the user has previously indicated not to show a given message again.
Public propertyStatic member FailButtonText Gets the default text for the Fail button.
Public property Font Gets or sets the font used in the message box.
Public property HelpLink Gets or sets the link to the help file or help Web page associated with the top-level message.
Public propertyStatic member IgnoreButtonText Gets the default text for the Ignore button.
Public property InnerException Gets or sets the Exception instance associated with the lower-level message(s).
Public property IsCheckBoxChecked Specifies whether the check box is selected when ShowCheckbox is true.
Public property Message Gets or sets the Exception that contains the message to display.
Public property MessageLevelDefault Gets or sets the number of message levels to display in the message box.
Public propertyStatic member NoButtonText Gets the default text for the No button
Public propertyStatic member OKButtonText Gets the default text for the OK button
Public property Options Gets or sets miscellaneous display options for the message box
Public propertyStatic member RetryButtonText Gets the default text for the Retry button.
Public property ShowCheckBox Specifies whether to show the check box in the exception message box.
Public property ShowToolBar Specifies whether to show the command button toolbar on the exception message box.
Public property Symbol Gets or sets the symbol to display in the exception message box.
Public property Text Gets or sets the text of the top-level message to display in the exception message box
Public property UseOwnerFont Specifies whether to retrieve the font of the owner window and use it as the font for the exception message box.
Public propertyStatic member YesButtonText Gets the default text for the Yes button

Top

Methods

  Name Description
Public method Equals (Inherited from Object.)
Protected method Finalize (Inherited from Object.)
Public method GetHashCode (Inherited from Object.)
Public methodStatic member GetMessageText Returns the string that a user can copy to the clipboard when the exception is displayed in an exception message box.
Public method GetType (Inherited from Object.)
Protected method MemberwiseClone (Inherited from Object.)
Public method SetButtonText(String) Sets the text for the custom text button when only one button is displayed in the exception message box.
Public method SetButtonText(String, String) Sets the text for the custom text buttons when only two buttons are displayed in the exception message box.
Public method SetButtonText(String, String, String) Sets the text for the custom text buttons when only three buttons are displayed in the exception message box.
Public method SetButtonText(String, String, String, String) Sets the text for the custom text buttons when only four buttons are displayed in the exception message box.
Public method SetButtonText(String, String, String, String, String) Sets the text for the custom text buttons when only five buttons are displayed in the exception message box.
Public method Show(IWin32Window) Shows the exception message box as a modal dialog box centered on the parent window.
Public method Show(IntPtr, String, String, String, String, String, String, String) Displays the exception message box. Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.
Public method ToString (Inherited from Object.)

Top

Events

  Name Description
Public event OnCopyToClipboard Occurs when exception message text is copied from the message box to the Clipboard.

Top

Examples

This example displays the message box with an OK button.

          try
            {
                // Do something that may generate an exception.
                throw new ApplicationException("An error has occured");
            }
            catch (ApplicationException ex)
            {
                // Define a new top-level error message.
                string str = "The action failed.";

                // Add the new top-level message to the handled exception.
                ApplicationException exTop = new ApplicationException(str, ex);
                exTop.Source = this.Text;

                // Show an exception message box with an OK button (the default).
                ExceptionMessageBox box = new ExceptionMessageBox(exTop);
                box.Show(this);
            }
Try
    ' Do something that may generate an exception.
    Throw New ApplicationException("An error has occured")
Catch ex As ApplicationException
    ' Define a new top-level error message.
    Dim str As String = "The action failed."

    ' Add the new top-level message to the handled exception.
    Dim exTop As ApplicationException = New ApplicationException(str, ex)
    exTop.Source = Me.Text

    ' Show an exception message box with an OK button (the default).
    Dim box As ExceptionMessageBox = New ExceptionMessageBox(exTop)
    box.Show(Me)
End Try

This example uses the exception message box to show additional information that is helpful when troubleshooting or debugging.

          try
            {
                // Do something that you don't expect to generate an exception.
                throw new ApplicationException("Failed to connect to the server.");
            }
            catch (ApplicationException ex)
            {
                string str = "An unexpected error occurred. Please call Helpdesk.";
                ApplicationException exTop = new ApplicationException(str, ex);
                exTop.Source = this.Text;

                // Information in the Data property of an exception that has a name
                // beginning with "HelpLink.Advanced" is shown when the user
                // clicks the Advanced Information button of the exception message
                // box dialog box.
                exTop.Data.Add("AdvancedInformation.FileName", "application.dll");
                exTop.Data.Add("AdvancedInformation.FilePosition", "line 355");
                exTop.Data.Add("AdvancedInformation.UserContext", "single user mode");

                // Show the exception message box with additional information that 
                // is helpful when a user calls technical support.
                ExceptionMessageBox box = new ExceptionMessageBox(exTop);

                box.Show(this);
            }
Try
    ' Do something that you don't expect to generate an exception.
    Throw New ApplicationException("Failed to connect to the server.")
Catch ex As ApplicationException
    Dim str As String = "An unexpected error occurred. Please call Helpdesk."
    Dim exTop As ApplicationException = New ApplicationException(str, ex)
    exTop.Source = Me.Text

    ' Information in the Data property of an exception that has a name
    ' beginning with "HelpLink.Advanced" is shown when the user
    ' clicks the Advanced Information button of the exception message
    ' box dialog box.
    exTop.Data.Add("AdvancedInformation.FileName", "application.dll")
    exTop.Data.Add("AdvancedInformation.FilePosition", "line 355")
    exTop.Data.Add("AdvancedInformation.UserContext", "single user mode")

    ' Show the exception message box with additional information that 
    ' is helpful when a user calls technical support.
    Dim box As ExceptionMessageBox = New ExceptionMessageBox(exTop)

    box.Show(Me)

End Try

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.SqlServer.MessageBox Namespace