Understanding Message Box in Windows Forms using C#

MessageBox control displays a message with specified text. A message box may have some additional options including a caption, icon, and help buttons. In this article, I will discuss how to use the MessageBox class to display messages in Windows Forms and C#.
MessageBox class has an overloaded static Show method that is used to display a message. Here are most of the forms of MessageBox.
Simple MessageBox
The simplest form of a MessageBox is a dialog with a text and OK button. The following code snippet creates a simple MessageBox.
string message = "Simple MessageBox";
MessageBox.Show(message);

MsgBoxImg1.jpg 
MessageBox with Title
The following code snippet creates a simple MessageBox with a title.
string message = "Simple MessageBox";
string title = "Title";
MessageBox.Show(message, title);

MsgBoxImg2.jpg

MessageBox with Buttons
A MessageBox can have different kinds of button combination such as YesNo or OKCancel. The MessageBoxButtons enumeration represents the buttons to be displayed on a MessageBox and has following values.
  • OK
  • OKCancel
  • AbortRetryIgnore
  • YesNoCancel
  • YesNo
  • RetryCancel

The following code snippet creates a MessageBox with a title and Yes and No buttons. This is a typical MessageBox you may call when you want to close an application. If Yes button is clicked, the application will be closed. The Show method returns a DialogResult enumeration.
string message = "Do you want to close this window?";
string title = "Close Window";
MessageBoxButtons buttons = MessageBoxButtons.YesNo;

DialogResult result = MessageBox.Show(message, title, buttons);
if (result == DialogResult.Yes)
{
    this.Close();
}
else
{
    // Do something
}

MsgBoxImg3.jpg
MessageBox with Icon
A MessageBox can display an icon on the dialog. A MessageBoxIcons enumeration represents an icon to be displayed on a MessageBox and has following values.
  • None
  • Hand
  • Question
  • Exclamation
  • Asterisk
  • Stop
  • Error
  • Warning
  • Information

The following code snippet creates a MessageBox with a title, buttons, and an icon.
string message = "Do you want to abort this operation?";
string title = "Close Window";
MessageBoxButtons buttons = MessageBoxButtons.AbortRetryIgnore;

DialogResult result = MessageBox.Show(message, title, buttons, MessageBoxIcon.Warning);
if (result == DialogResult.Abort)
{
    this.Close();
}
else if (result == DialogResult.Retry)
{
    // Do nothing
}
else
{
    // Do something
}
 MsgBoxImg4.jpg
MessageBox with Default Button
We can also set the default button on a MessageBox. By default, the first button is the default button. The MessageBoxDefaultButton enumeration is used for this purpose and it has following three values.
  • Button1
  • Button2
  • Button3

The following code snippet creates a MessageBox with a title, buttons, and an icon and sets second button as a default button.
string message = "Do you want to abort this operation?";
string title = "Close Window";
MessageBoxButtons buttons = MessageBoxButtons.AbortRetryIgnore;

DialogResult result = MessageBox.Show(message, title, buttons,
    MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
if (result == DialogResult.Abort)
{
    this.Close();
}
else if (result == DialogResult.Retry)
{
    // Do nothing
}
else
{
    // Do something
}

MsgBoxImg5.jpg
MessageBox with Message Options
MessageBoxOptions enumeration represents various options and has following values.
  • ServiceNotification
  • DefaultDesktopOnly
  • RightAlign
  • RtlReading

The following code snippet creates a MessageBox with various options.
DialogResult result = MessageBox.Show(message, title, buttons,
                MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2,
                MessageBoxOptions.RightAlign|MessageBoxOptions.RtlReading);

MsgBoxImg6.jpg
MessageBox with Help Button
A MessageBox can have an extra button called Help button. This is useful when we need to display a help file. The following code snippet creates a MessageBox with a Help button.
DialogResult result = MessageBox.Show(message, title, buttons,
                MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2,
                MessageBoxOptions.RightAlign, true );

MsgBoxImg7.jpg
We can also specify a help file when the Help button is clicked. The following code snippet references a help file.
DialogResult result = MessageBox.Show(message, title,
                buttons, MessageBoxIcon.Question,
                MessageBoxDefaultButton.Button1, 0, "helpfile.chm");

Summary
In this blog, we discussed discuss how to create and use a MessageBox in a Windows Forms application.

Post a Comment

0 Comments

Translate

Close Menu