首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> C# >> 關於C#

C# MessageBox 完整使用指南:按鈕、圖示、預設焦點與進階選項

     編輯:關於C#

基本語法

MessageBox.Show 位於 System.Windows.Forms 命名空間,回傳 DialogResult 列舉值,依使用者點選的按鈕決定後續邏輯。

常見多載與範例

1. 僅顯示訊息(確定鍵)

MessageBox.Show("僅顯示提示訊息!");

2. 指定標題

MessageBox.Show("顯示提示訊息!", "標題");

3. 指定按鈕組合

// Yes / No / Cancel 三個按鈕
if (MessageBox.Show("顯示提示訊息", "標題", MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
{
    // 使用者點選「是」
}

可用按鈕列舉: OK、OKCancel、YesNo、YesNoCancel、RetryCancel、AbortRetryIgnore

4. 加入圖示

MessageBox.Show("訊息", "標題", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

圖示類型: Error、Warning、Information、Question、Exclamation、Hand、Stop、Asterisk

5. 設定預設焦點按鈕

// 第二個按鈕 (Cancel) 為預設焦點
MessageBox.Show("訊息", "標題", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);

6. 文字方向與對齊

// 反向閱讀順序 (RTL)
MessageBox.Show("訊息", "標題", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2, MessageBoxOptions.RtlReading);

// 標題靠右對齊
MessageBox.Show("訊息", "標題", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2, MessageBoxOptions.RightAlign);

7. 完整參數:加入說明檔案

MessageBox.Show(
    "訊息內容",
    "標題",
    MessageBoxButtons.OKCancel,
    MessageBoxIcon.Warning,
    MessageBoxDefaultButton.Button2,
    MessageBoxOptions.RightAlign,
    @"d:\help.chm"  // 說明檔路徑,點擊說明按鈕開啟
);

回傳值對照表

按鈕組合可能回傳值
OKOK
OKCancelOK, Cancel
YesNoYes, No
YesNoCancelYes, No, Cancel
RetryCancelRetry, Cancel
AbortRetryIgnoreAbort, Retry, Ignore

最佳實務建議

  • 嚴重錯誤用 MessageBoxIcon.Error + OK;確認刪除等危險操作用 Warning + YesNo 或 YesNoCancel。
  • 預設焦點設為「安全」選項(如 Cancel、No),避免使用者誤按 Enter 執行破壞性動作。
  • 若在非 UI 執行緒呼叫,需用 Control.Invoke 或 Dispatcher.Invoke 切回 UI 執行緒,否則會拋出例外或介面凍結。
  • 單元測試專案中無法直接測試 MessageBox,建議抽象介面 IMessageService 以利 Mock。

參考資源

原文連結:https://www.bianceng.cn/Programming/csharp/201410/45748.htm

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved