ホーム > コンピュータ > C# > ダイアログボックス

メッセージ・ダイアログ・ボックス[C#WPF]

概要

メッセージ・ダイアログ・ボックスは、テキスト情報を表示し、ユーザーにボタンによる判断を求めるために使用できるダイアログ・ボックスです。

YesNoCancelメッセージボックス

3つのボタンとメッセージで構成されるYesNoCancelメッセージボックスの実装例です。メインウィンドウのボタンを押すと、YesNoCancelメッセージボックスが表示されます。 メッセージボタンのボタンを押すとメインウィンドウのラベルに押したことが表示されます。

[xaml]


<Window x:Class="BasicWindow.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="150" Width="200">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="80*"/>
            <RowDefinition Height="40*"/>
        </Grid.RowDefinitions>
        
        <Button Name="btn0" Grid.Row="0" HorizontalAlignment="Center" VerticalAlignment="Center" 
                Width="100" Height="50" Click="btn0_Click">
            押してね。
        </Button>
        <Label Name="Label01" content="メッセージ" Grid.Row="1" Background="Cornsilk" />

    </Grid>
</Window>
				
  メッセージボックスサンプル  YesNoCancelメッセージボックス

[xaml.cs]


using System.Windows;

namespace BasicWindow
{
    /// <summary>
    /// MainWindow.xaml の相互作用ロジック
    /// </summary>
    public partial class MainWindow : Window
    {

        public MainWindow()
        {
            InitializeComponent();
        }

        private void btn0_Click(object sender, RoutedEventArgs e)
        {
            // ボタンのイベントを処理する。処理は、直接記述せず、メソッドにまとめて呼び出します。
            btn0Process();
        }

        private void btn0Process()
        {
            // メッセージダイアログを呼び出すメソッド
            
            // Configure the message box to be displayed
            // 表示されるメッセージボックスを構成します
            string messageBoxText = "変更を保存しますか?";
            string caption = "Word Processor";
            MessageBoxButton button = MessageBoxButton.YesNoCancel;
            MessageBoxImage icon = MessageBoxImage.Warning;

            // Labelのメッセージを消去する
            Label01.Content = "";

            // Display message box メッセージボックスを表示します
            MessageBoxResult result = MessageBox.Show(messageBoxText, caption, button, icon);

            // メッセージダイアログボックスで押されたボタンの処理
            // Process message box results
            switch (result)
            {
                case MessageBoxResult.Yes:
                    // User pressed Yes button
                    Label01.Content = "「はい」が押されたよ。";
                    break;
                case MessageBoxResult.No:
                    // User pressed No button
                    Label01.Content = "「いいえ」が押されたよ。";
                    break;
                case MessageBoxResult.Cancel:
                    // User pressed Cancel button
                    Label01.Content = "「キャンセル」が押されたよ。";
                    break;
            }
        }
    }
}
				

参考サイト

ダイアログ ボックスの概要 (msdn)(外部サイト)

メッセージボックスのサンプル (msdn)(外部サイト)

MessageBox クラス (msdn)(外部サイト)

MessageBoxResult 列挙体 (msdn)(外部サイト)

動作確認環境

Microsoft Visual Studio Express 2013 for Desktop 64bit
Windows 8.1 pro 64bit
ページトップへ
WPF in C#
C#
ダイアログボックス
Copyright (C) 2011-2016 kukekko All Rights Reserved.
kukekko@gmail.com
ご連絡の際はアドレスの@は半角にしてください。 また、お問い合わせページのURLの明記をお願いします。
「掲載内容は私自身の見解であり、所属する組織を代表するものではありません 」。
inserted by FC2 system