Windows アプリ向けのバッジ通知

63 件の未読メールを示す番号 63 を表示する数値バッジ付きのタイル。
タイル上の数値バッジが数字の 63 を表示して、
63 の未読メールがあることを示しています。

通知バッジは、使っているアプリ特有の概要や状態情報を伝達します。 バッジは、数値 (1 ~ 99) の場合やシステムが提供するグリフの 1 つである場合があります。 バッジによってよく伝達される情報の例としては、オンライン ゲームでのネットワーク接続状態、メッセージング アプリでのユーザーの状態、メール アプリでの未読メールの数、ソーシャル メディア アプリでの新しい投稿数などがあります。

通知バッジは、アプリが実行されているかどうかに関係なく、アプリのタスク バーのアイコンとスタート タイルの右下隅に表示されます。 バッジは、どのサイズのタイルにも表示できます。

注意

独自のバッジ イメージを指定することはできません。システムが提供するバッジ イメージだけを使うことができます。

数値バッジ

バッジ XML
1 ~ 99 の数字。 値 0 はグリフ値 "none" と同じであり、バッジをクリアします。 100 より小さい数値バッジ。 <badge value="1"/>
99 を超える数字。 99 より大きい数値バッジ。 <badge value="100"/>

グリフ バッジ

バッジには、数値の代わりに拡張不可能な状態グリフ セットの 1 つを表示することもできます。

状態 グリフ XML
なし (バッジは表示されません。) <badge value="none"/>
activity <badge value="activity"/>
alarm (アラーム) <badge value="alarm"/>
アラート <badge value="alert"/>
attention (注意) <badge value="attention"/>
利用可能 <badge value="available"/>
away (離席中) <badge value="away"/>
busy (取り込み中) <badge value="busy"/>
error <badge value="error"/>
newMessage (新しいメッセージ) <badge value="newMessage"/>
paused (一時停止) <badge value="paused"/>
playing (再生) <badge value="playing"/>
unavailable (利用不可) <badge value="unavailable"/>

バッジの作成

以降の例で、バッジの更新を作成する方法を示します。

数値バッジの作成

private void setBadgeNumber(int num)
{

    // Get the blank badge XML payload for a badge number
    XmlDocument badgeXml = 
        BadgeUpdateManager.GetTemplateContent(BadgeTemplateType.BadgeNumber);

    // Set the value of the badge in the XML to our number
    XmlElement badgeElement = badgeXml.SelectSingleNode("/badge") as XmlElement;
    badgeElement.SetAttribute("value", num.ToString());

    // Create the badge notification
    BadgeNotification badge = new BadgeNotification(badgeXml);

    // Create the badge updater for the application
    BadgeUpdater badgeUpdater = 
        BadgeUpdateManager.CreateBadgeUpdaterForApplication();

    // And update the badge
    badgeUpdater.Update(badge);

}

グリフ バッジの作成

private void updateBadgeGlyph()
{
    string badgeGlyphValue = "alert";

    // Get the blank badge XML payload for a badge glyph
    XmlDocument badgeXml = 
        BadgeUpdateManager.GetTemplateContent(BadgeTemplateType.BadgeGlyph);

    // Set the value of the badge in the XML to our glyph value
    Windows.Data.Xml.Dom.XmlElement badgeElement = 
        badgeXml.SelectSingleNode("/badge") as Windows.Data.Xml.Dom.XmlElement;
    badgeElement.SetAttribute("value", badgeGlyphValue);

    // Create the badge notification
    BadgeNotification badge = new BadgeNotification(badgeXml);

    // Create the badge updater for the application
    BadgeUpdater badgeUpdater = 
        BadgeUpdateManager.CreateBadgeUpdaterForApplication();

    // And update the badge
    badgeUpdater.Update(badge);

}

バッジのクリア

private void clearBadge()
{
    BadgeUpdateManager.CreateBadgeUpdaterForApplication().Clear();
}

サンプル コードを入手する

  • 通知のサンプル
    ライブ タイルを作り、バッジの更新を送信し、トースト通知を表示する方法を示します。