8

WPF C# デスクトップ アプリケーションで Windows 10 トーストを表示しようとしています。

悲しいことに、UWP 以外または Store アプリでの Windows 10 通知に関する API と一般的なサポートは、かなり限定的で混沌としているようです。最近、UWP コミュニティ ツールキットが公開されました。次のようなトーストを作成するのに役立つ、この Store アプリNotifications Visualizerもあります。

ここに画像の説明を入力

続けて、C# と UWP Community Toolkit が提供する API を使用してトーストを生成しようとしました。

Microsoft.Toolkit.Uwp.Notifications の使用;

ToastContent toastContent = new ToastContent()
{
    Visual = new ToastVisual()
    {
        BindingGeneric = new ToastBindingGeneric()
        {
            Children =
            {
                new AdaptiveText()
                {
                    Text = "Matt sent you a friend request"
                },
                new AdaptiveText()
                {
                    Text = "Hey, wanna dress up as wizards and ride around on our hoverboards together?"
                }
            },
            AppLogoOverride = new ToastGenericAppLogo()
            {
                Source = "https://unsplash.it/64?image=1005",
                HintCrop = ToastGenericAppLogoCrop.Circle
            }
        }
    }
};


XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(toastContent.GetContent());

var toast = new ToastNotification(xmlDoc);
ToastNotificationManager.CreateToastNotifier(AppId).Show(toast); // Display toast

残念ながら、何を試しても同じ結果が得られないようです。画像は常に何らかの理由で欠落しています:

ここに画像の説明を入力

これらの通知に関して私が見つけたほとんどの情報は、時代遅れであるか役に立たないものです。誰かがこれに光を当てることができますか?ありがとうございました。

4

1 に答える 1

10

UWP Toolkit だけでこれを行う方法はありません

.NET Standard では、これは 2 つの手順でしか実現できないようで、そのうちの 1 つは UWP Toolkit の範囲外です。

.NET Standard アプリでは、Windows 10 アクション センターを適切に使用するために、COM サーバーと特別なスタート メニュー ショートカットが必要です。UWP アプリは、同等の機能を必要としないか、既に付属しているようです。これらの 2 つの手順は、アプリケーションのインストール中に実行することになっています。これは明らかに、Microsoft UWP Toolkit が関与しないものです。したがって、UWP Toolkit だけでは、Windows 10 トーストを表示するための完全なソリューションを提供できないだけでなく、提供することもできません。自己完結型の .NET Standard 用。

代替案

Githubで、名前に「Microsoft」が含まれるあいまいな C# プロジェクトを見つけました。これは、UWP ツールキットがなくてもそのまま使用できます。COM サーバーの登録とショートカットの作成に使用される GUID と AppID 文字列を指定する必要があります。

よりきれいに見える代替手段は、同じ機能を提供しているように見えるこのライブラリです。私はまだそれをテストする必要があります。

これらのソリューションはどちらも、UWP ツールキットの前身であり、Toast を構成する XML コードの生成を支援するMicrosoft のNotificationsExtensionsライブラリと連携する必要があります。

于 2016-10-06T12:17:46.920 に答える