茫茫網海中的冷日 - 對這文章發表回應
茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1672397 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
F09_317.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

對這文章發表回應

發表限制: 非會員 可以發表

發表者: 冷日 發表時間: 2013/9/27 9:23:56

C# MessageBox.Show


Dialog boxes interrupt users. They force users to respond before further action is taken. This is necessary in some situations. MessageBox.Show is useful if a warning is important or a serious error occurred.




Examples of MessageBox.Show in Windows Forms

Example



To start, the MessageBox.Show method is a static method, which means you do not need to create a new MessageBox() anywhere in your code. Instead, you can simply type "MessageBox" and press the period, and then select Show.


Static Method

In this example,the MessageBox.Show method is used in the Form1_Load event handler. To make the Form1_Load event handler, create a new Windows Forms application and double-click on the window in the designer.


Windows Forms program that uses MessageBox: C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//
// The simplest overload of MessageBox.Show. [1]
//

MessageBox.Show("Dot Net Perls is awesome.");
//
// Dialog box with text and a title. [2]
//

MessageBox.Show("Dot Net Perls is awesome.",
"Important Message");
//
// Dialog box with two buttons: yes and no. [3]
//

DialogResult result1 = MessageBox.Show("Is Dot Net Perls awesome?",
"Important Question",
MessageBoxButtons.YesNo);
//
// Dialog box with question icon. [4]
//

DialogResult result2 = MessageBox.Show("Is Dot Net Perls awesome?",
"Important Query",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question);
//
// Dialog box with question icon and default button. [5]
//

DialogResult result3 = MessageBox.Show("Is Visual Basic awesome?",
"The Question",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question,
MessageBoxDefaultButton.Button2);
//
// Test the results of the previous three dialogs. [6]
//

if (result1 == DialogResult.Yes &&
result2 == DialogResult.Yes &&
result3 == DialogResult.No)
{
MessageBox.Show("You answered yes, yes and no.");
}
//
// Dialog box that is right-aligned (not useful). [7]
//

MessageBox.Show("Dot Net Perls is the best.",
"Critical Warning",
MessageBoxButtons.OKCancel,
MessageBoxIcon.Warning,
MessageBoxDefaultButton.Button1,
MessageBoxOptions.RightAlign,
true);
//
// Dialog box with exclamation icon. [8]
//

MessageBox.Show("Dot Net Perls is super.",
"Important Note",
MessageBoxButtons.OK,
MessageBoxIcon.Exclamation,
MessageBoxDefaultButton.Button1);
}
}
}

Note

In Form1_Load,there are eight calls to the MessageBox.Show method using different overloads. The Form1_Load method is executed immediately after the program starts. When run, the program shows all the dialogs in sequential order.



And:The MessageBox.Show calls above call into different, overloaded implementations of the function based on the parameter lists.


Overload
Visual Studio logo

Typing in the options.The easiest way to use MessageBox.Show is to type in "MessageBox", and then press period, and then select Show. Next, Visual Studio shows a popup with the overload list. You can scroll through the overload lists.



Tip:For a parameter such as "MessageBoxButtons", type in "MessageBoxButtons" and press period to see all the options.



Also:You do not need to create a new MessageBoxButtons() object. This is an enum type, not a class.


Enum
Method call

The orderof the parameters in the MessageBox.Show method calls is important. The parameter order gives the compiler the ability to apply overload resolution to call the best method in the method group.


Images:The image at the top of this document shows eight dialog boxes. These correspond to MessageBox.Show calls.



Note:Dialog box [6] only is shown when you specify certain options on the previous three dialogs. It tests the DialogResult enumeration.

DialogResult


DialogResult example


In Windows Forms, DialogResult is not an actual class but is a named constant from an enumeration. This means you cannot create a new DialogResult with the new operator. First assign your variable to the result of MessageBox.Show.


Next,type in "==" and Visual Studio will suggest options from the DialogResult enumeration. You can compare DialogResult like you would compare an integral type such as int. You can even use it in a switch.


DialogResult

More overloads


Steps

There are several more overloads of MessageBox.Show that are not shown in this document. They allow you to specify owner windows, which you do not need to do in simple cases. The IWin32Window owner parameter is an interface type.


Interface:An interface in the C# language is a contract that can be used to treat object instances in a more general way.


Interface

HelpNavigator parameter.The MessageBox.Show method also has overloads that allow you to specify Help options. In my experience, these options are not used most of the time, so I leave the specifics here up to MSDN.

User experience


Warning: exclamation mark


When designing programs for the end user, it is usually best to make non-critical errors as unobtrusive as possible. The Microsoft User Experience Guidelines provide many tips on dialog boxes.


Well-written, helpful error messages are crucial to a quality user experience. Poorly written error messages result in low product satisfaction, and are a leading cause of avoidable technical support costs. Unnecessary error messages break users' flow.



Error Messages: MSDN

Summary



Framework: NET


We saw examples of calling MessageBox.Show in C# programs using Windows Forms. We looked at the actual screenshots of the results of MessageBox.Show method calls, and also tested the DialogResult enumeration.




原文出處:C# MessageBox.Show Examples
內容圖示
url email imgsrc image code quote
樣本
bold italic underline linethrough   












 [詳情...]
validation picture

注意事項:
預覽不需輸入認證碼,僅真正發送文章時才會檢查驗證碼。
認證碼有效期10分鐘,若輸入資料超過10分鐘,請您備份內容後,重新整理本頁並貼回您的內容,再輸入驗證碼送出。

選項

Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|