MessageBox::Show Method (IWin32Window^, String^, String^, MessageBoxButtons, MessageBoxIcon, MessageBoxDefaultButton, MessageBoxOptions, String^)
Displays a message box with the specified text, caption, buttons, icon, default button, options, and Help button, using the specified Help file.
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
public: static DialogResult Show( IWin32Window^ owner, String^ text, String^ caption, MessageBoxButtons buttons, MessageBoxIcon icon, MessageBoxDefaultButton defaultButton, MessageBoxOptions options, String^ helpFilePath )
Parameters
- owner
-
Type:
System.Windows.Forms::IWin32Window^
An implementation of IWin32Window that will own the modal dialog box.
- text
-
Type:
System::String^
The text to display in the message box.
- caption
-
Type:
System::String^
The text to display in the title bar of the message box.
- buttons
-
Type:
System.Windows.Forms::MessageBoxButtons
One of the MessageBoxButtons values that specifies which buttons to display in the message box.
- icon
-
Type:
System.Windows.Forms::MessageBoxIcon
One of the MessageBoxIcon values that specifies which icon to display in the message box.
- defaultButton
-
Type:
System.Windows.Forms::MessageBoxDefaultButton
One of the MessageBoxDefaultButton values that specifies the default button for the message box.
- options
-
Type:
System.Windows.Forms::MessageBoxOptions
One of the MessageBoxOptions values that specifies which display and association options will be used for the message box. You may pass in 0 if you wish to use the defaults.
- helpFilePath
-
Type:
System::String^
The path and name of the Help file to display when the user clicks the Help button.
| Exception | Condition |
|---|---|
| InvalidEnumArgumentException | buttons is not a member of MessageBoxButtons. -or- icon is not a member of MessageBoxIcon. -or- The defaultButton specified is not a member of MessageBoxDefaultButton. |
| InvalidOperationException | An attempt was made to display the MessageBox in a process that is not running in User Interactive mode. This is specified by the SystemInformation::UserInteractive property. |
| ArgumentException | options specified both DefaultDesktopOnly and ServiceNotification. -or- buttons specified an invalid combination of MessageBoxButtons. |
A message box is a modal dialog box, which means no input (keyboard or mouse click) can occur except to objects on the modal form. The program must hide or close a modal form (typically in response to some user action) before input to another form can occur. You can use the owner parameter to specify a particular object, which implements the IWin32Window interface, that will serve as the dialog box's top-level window and owner.
When the user clicks the Help button, the Help file specified in the helpFilePath parameter is opened. The form that owns the message box (or the active form) also receives the HelpRequested event.
The helpFilePath parameter can be of the form C:\path\sample.chm or /folder/file.htm.
The following code example demonstrates how to show a message box that parented to the main form. The message box displays a Help button. When the user clicks the Help button, the Mspaint.chm Help file is opened. The example requires that the Mspaint.chm Help file is installed.
#using <System.dll> #using <System.Windows.Forms.dll> #using <System.Drawing.dll> using namespace System; using namespace System::Drawing; using namespace System::ComponentModel; using namespace System::Windows::Forms;
// Display a message box parented to the main form. // The Help button opens the Mspaint.chm Help file. System::Windows::Forms::DialogResult r2 = MessageBox::Show( this, "Message with Help file.", "Help Caption", MessageBoxButtons::OK, MessageBoxIcon::Question, MessageBoxDefaultButton::Button1, (MessageBoxOptions)0, "mspaint.chm" );
for safe subwindows to call this method. Associated enumeration: UIPermissionWindow::SafeSubWindows
to access a HTML help file through a HTTP request. Associated enumeration: NetworkAccess::Connect
to access a HTML help file not served from a HTTP server. Associated enumeration: UnmanagedCode
Available since 2.0