C# MessageBoxの表示方法|Yes/Noボタンで処理を分岐するサンプル
C#でMessageBoxを表示する方法を解説します。MessageBox.Showを使ってYes/Noボタン、OK/Cancel、Yes/No/Cancelを表示し、DialogResultで押されたボタンごとに処理を分岐するサンプルコードを紹介します。
環境
- OS windows10 pro 64bit
- Microsoft Visual Studio Community 2019 Version 16.7.1
MessageBox.Show使い方
MessageBox.Showを使用すると、「はい」と「いいえ」が選択できるMessageBoxを表示することが可能です。
MessageBox.Show("msg","タイトル", MessageBoxButtons.YesNo);
その他にも「OK」「キャンセル」や
MessageBox.Show("msg", "タイトル", MessageBoxButtons.OKCancel);
「はい」「いいえ」「キャンセル」や
MessageBox.Show("msg", "タイトル", MessageBoxButtons.YesNoCancel);
「再試行」「キャンセル」
MessageBox.Show("msg", "タイトル", MessageBoxButtons.RetryCancel);
「中止」「再試行」「無視」などもあります。
MessageBox.Show("msg", "タイトル", MessageBoxButtons.AbortRetryIgnore);
サンプルコード
以下は、
「実行」ボタンをクリックするとmessageboxに「はい」と「いいえ」ボタンを表示させ、結果により表示するメッセージボックスを変更する
サンプルコードとなります。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
namespace FormTestApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
// メッセージボックスを表示
DialogResult result = MessageBox.Show("msg", "タイトル", MessageBoxButtons.YesNo);
if (result == System.Windows.Forms.DialogResult.Yes)
{
MessageBox.Show("はい");
}
else if (result == System.Windows.Forms.DialogResult.No)
{
MessageBox.Show("いいえ");
}
}
}
}
ボタンにより処理が分岐されていることが確認できます。

MessageBox.Showの戻り値はDialogResultで取得できます。
押されたボタンで処理を分岐する
「はい」が押された場合はDialogResult.Yes、「いいえ」が押された場合はDialogResult.Noで判定できます。
DialogResult result = MessageBox.Show(
"処理を実行しますか?",
"確認",
MessageBoxButtons.YesNo
);
if (result == DialogResult.Yes)
{
MessageBox.Show("はいが選択されました。");
}
else if (result == DialogResult.No)
{
MessageBox.Show("いいえが選択されました。");
}MessageBoxでよく使うボタンの種類
MessageBoxでは、Yes/No以外にも複数のボタンパターンを指定できます。
// OKボタンのみ
MessageBox.Show("メッセージ");
// OK / キャンセル
MessageBox.Show("処理を続行しますか?", "確認", MessageBoxButtons.OKCancel);
// はい / いいえ
MessageBox.Show("保存しますか?", "確認", MessageBoxButtons.YesNo);
// はい / いいえ / キャンセル
MessageBox.Show("変更を保存しますか?", "確認", MessageBoxButtons.YesNoCancel);
// 再試行 / キャンセル
MessageBox.Show("再試行しますか?", "確認", MessageBoxButtons.RetryCancel);アイコン付きのMessageBoxを表示する
確認・警告・エラーなどを分かりやすくする場合は、MessageBoxIconを指定します。
MessageBox.Show(
"入力内容を確認してください。",
"警告",
MessageBoxButtons.OK,
MessageBoxIcon.Warning
);エラー表示の場合は、以下のようにMessageBoxIcon.Errorを指定します。
MessageBox.Show(
"エラーが発生しました。",
"エラー",
MessageBoxButtons.OK,
MessageBoxIcon.Error
);まとめ
C#でMessageBoxを表示する場合は、MessageBox.Showを使用します。
MessageBoxButtons.YesNoを指定すると「はい」「いいえ」のボタンを表示でき、戻り値のDialogResultを使うことで、ユーザーが押したボタンに応じて処理を分岐できます。
-
前の記事
python 三項演算子を使用してif文を1行で記述する 2020.10.28
-
次の記事
Nuxt.js ライブラリ「vue-js-toolbar」をインストールして移動可能なツールバーを実装する 2020.10.28
コメントを書く