クイック スタート: デスクトップからトースト通知を送信する
このクイックスタートでは、デスクトップ アプリからトースト通知を生成する方法を示します。
前提条件
- ライブラリ
- C++: Runtime.object.lib
- C#: Windows.Winmd
- System.AppUserModel.ID を使用してアプリへのショートカットをスタート画面にインストールする必要があります。 ただし、スタート画面にピン留めする必要はありません。 詳細については、「 AppUserModelID を使用してデスクトップ トースト通知を有効にする方法」を参照してください。
- 少なくとも Windows 8 をサポートする Microsoft Visual Studio のバージョン
Instructions
1. トースト コンテンツを作成する
注意
イメージを含むトースト テンプレートを指定する場合は、デスクトップ アプリでローカル イメージのみを使用できることに注意してください。Web イメージはサポートされていません。 また、ローカル イメージ ファイルへのパスは、相対パスではなく絶対パスとして指定する必要があります。
// Get a toast XML template
XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastImageAndText04);
// Fill in the text elements
XmlNodeList stringElements = toastXml.GetElementsByTagName("text");
for (int i = 0; i < stringElements.Length; i++)
{
stringElements[i].AppendChild(toastXml.CreateTextNode("Line " + i));
}
// Specify the absolute path to an image
String imagePath = "file:///" + Path.GetFullPath("toastImageAndText.png");
XmlNodeList imageElements = toastXml.GetElementsByTagName("image");
ToastNotification toast = new ToastNotification(toastXml);
2. イベント ハンドラーを作成してアタッチする
トースト イベントのハンドラーを登録します(アクティブ化、無視、失敗)。 デスクトップ アプリは、ユーザーが選択したときにトーストからアプリの予想されるアクティブ化を処理できるように、少なくとも Activated イベントをサブスクライブする必要があります。
toast.Activated += ToastActivated;
toast.Dismissed += ToastDismissed;
toast.Failed += ToastFailed;
3. トーストを送信する
重要
CreateToastNotifier を呼び出すたびに、スタート画面にアプリのショートカットの AppUserModelID を含める必要があります。 これを行わないと、トーストは表示されません。
ToastNotificationManager.CreateToastNotifier(appID).Show(toast);
4. コールバックを処理する
トースト通知から "アクティブ化された" コールバックを受け取った場合は、アプリのウィンドウをフォアグラウンドに移動します。 ユーザーがトーストを選択すると、そのトーストのコンテンツに関連するビューにアプリが起動することが期待されます。
関連トピック