MessageBox.Show Method (IWin32Window, String, String, MessageBoxButtons, MessageBoxIcon)
Displays a message box in front of the specified object and with the specified text, caption, buttons, and icon.
Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
public static DialogResult Show( IWin32Window owner, string text, string caption, MessageBoxButtons buttons, MessageBoxIcon icon )
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.
| Exception | Condition |
|---|---|
| InvalidEnumArgumentException | buttons is not a member of MessageBoxButtons. -or- icon is not a member of MessageBoxIcon. |
| 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. |
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. 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 have a maximum of three buttons on the message box.
The following code example demonstrates how to display a MessageBox with the options supported by this overload of Show. After verifying that a string variable, ServerName, is empty, the example displays a MessageBox, offering the user the option to cancel the operation. If the Show method's return value evaluates to Yes, the form that displayed the MessageBox is closed.
private void validateUserEntry4() { // Checks the value of the text. if(serverName.Text.Length == 0) { // Initializes the variables to pass to the MessageBox.Show method. string message = "You did not enter a server name. Cancel this operation?"; string caption = "No Server Name Specified"; MessageBoxButtons buttons = MessageBoxButtons.YesNo; DialogResult result; // Displays the MessageBox. result = MessageBox.Show(this, message, caption, buttons, MessageBoxIcon.Question); if(result == DialogResult.Yes) { // Closes the parent form. this.Close(); } } }
- UIPermission
for safe subwindows to call this method. Associated enumeration: UIPermissionWindow.SafeSubWindows
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.