Skip to main content
.NET Framework Class Library
MessageBox..::.Show Method (String, String, MessageBoxButtons, MessageBoxIcon, MessageBoxDefaultButton, MessageBoxOptions)

Displays a message box with the specified text, caption, buttons, icon, default button, and options.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
Syntax
Public Shared Function Show ( _
	text As String, _
	caption As String, _
	buttons As MessageBoxButtons, _
	icon As MessageBoxIcon, _
	defaultButton As MessageBoxDefaultButton, _
	options As MessageBoxOptions _
) As DialogResult
public static DialogResult Show(
	string text,
	string caption,
	MessageBoxButtons buttons,
	MessageBoxIcon icon,
	MessageBoxDefaultButton defaultButton,
	MessageBoxOptions options
)
public:
static DialogResult Show(
	String^ text, 
	String^ caption, 
	MessageBoxButtons buttons, 
	MessageBoxIcon icon, 
	MessageBoxDefaultButton defaultButton, 
	MessageBoxOptions options
)
static member Show : 
        text:string * 
        caption:string * 
        buttons:MessageBoxButtons * 
        icon:MessageBoxIcon * 
        defaultButton:MessageBoxDefaultButton * 
        options:MessageBoxOptions -> DialogResult 

Parameters

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.

Return Value

Type: System.Windows.Forms..::.DialogResult
One of the DialogResult values.
Exceptions
ExceptionCondition
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.

Remarks

You can have a maximum of three buttons on the message box.

Examples

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 with a question box icon, offering the user the option to cancel the operation. The example uses the RightAlign member of the MessageBoxOptions enumeration to align the text to the right edge of the dialog box. If the Show method's return value evaluates to Yes, the form that displayed the MessageBox is closed.


Private Sub ValidateUserEntry2()


    ' Checks the value of the text.

    If ServerName.Text.Length = 0 Then

        ' Initializes variables to pass to the MessageBox.Show method.

        Dim Message As String = "You did not enter a server name. Cancel this operation?"
        Dim Caption As String = "No Server Name Specified"
        Dim Buttons As Integer = MessageBoxButtons.YesNo

        Dim Result As DialogResult

        'Displays a MessageBox using the Question icon and specifying the No button as the default.

        Result = MessageBox.Show(Me, Message, Caption, MessageBoxButtons.YesNo, _
            MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign)


        ' Gets the result of the MessageBox display.

        If Result = System.Windows.Forms.DialogResult.Yes Then

            ' Closes the parent form.

            Me.Close()

        End If

    End If

End Sub



	private void validateUserEntry2()
	{

		// 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, MessageBoxDefaultButton.Button1, 
				MessageBoxOptions.RightAlign);

			if(result == DialogResult.Yes)
			{

				// Closes the parent form.

				this.Close();

			}

		}

	}



private:
   void validateUserEntry2()
   {
      // 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;
         System::Windows::Forms::DialogResult result;

         // Displays the MessageBox.
         result = MessageBox::Show( this, message, caption, buttons, MessageBoxIcon::Question, MessageBoxDefaultButton::Button1, MessageBoxOptions::RightAlign );
         if ( result == ::DialogResult::Yes )
         {
            // Closes the parent form.
            this->Close();
         }
      }
   }

Version Information

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
.NET Framework Security
Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.