libro
www.tuyano.com
C#ではじめるWindows 8アプリ開発入門

ボタンを使って動かそう! (4/4)

作成:2014-01-25 11:34
更新:2014-01-25 11:34

■メッセージダイアログを表示する

では、もう一歩進めて、「結果をメッセージダイアログで表示する」ということをやってみましょう。下のリスト欄に、MainPage.Xaml.csのソースコードを掲載しておきました。いくつか変更箇所があるので注意しましょう。

●usingの追加
まず、using文が1つ追加になります。using Windows.UI.Popups;というものですね。メッセージダイアログを扱うMessageDialogクラスがこのパッケージに用意されていますので、これはusingしておいたほうがよいでしょう。

●MessageDialogの利用
button1_clickメソッドでは、メッセージダイアログを利用するためのクラス「MessgeDialog」を利用しています。これは以下のようにインスタンスを作成します。
new MessageDialog( コンテンツ , タイトル );
第1引数に、表示するメッセージのstringを、そして第2引き数にはタイトルとなるstringをそれぞれ指定します。ダイアログの表示は、以下のようにします。
《MessageDialog》.ShowAsync();
これでダイアログが画面に表示されます。このShowAsyncは、非同期でダイアログを表示するメソッドです。Windows 8では、表示中、処理が停止する同期ダイアログ(いわゆるモーダルダイアログ)は使われません。

このMessageDialogは、他にも色々使えるのですが、非同期表示であるため、利用にはちょっとしたテクニックが必要となります。次回、もう少し詳しく取り上げることにしましょう。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Popups; // ☆追加
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;

namespace MyWin8App
{
    public sealed partial class MainPage : Page
    {
        public MainPage()
        {
            this.InitializeComponent();
        }

        private void button1_click(object sender, RoutedEventArgs e)
        {
            string msg = "Hello, " + textbox1.Text + "!";
            MessageDialog dlog = new MessageDialog(msg,"Hello");
            dlog.ShowAsync();
        }
    }
}

※関連コンテンツ

「C#ではじめるWindows 8アプリ開発入門」に戻る