c# - 桌面上的 UWP 全局 MessageDialog

标签 c# uwp

我想要一个在发生某些事件时提醒用户的应用程序。

我使用 MessageDialog,但问题是仅当应用程序位于屏幕顶部时才会弹出(例如,当用户浏览网页时,他不会收到警报,他必须单击我的应用程序查看警报)

对于这种情况,我可以使用一些替代方案吗?或者 UWP 不支持这种行为?

最佳答案

你应该尝试toast notifications 。需要先安装以下两个nuget包。

Install-Package QueryString.NET -Version 1.0.0

Install-Package Microsoft.Toolkit.Uwp.Notifications

private void Toast()
{
    var visual = new ToastVisual
    {
        BindingGeneric = new ToastBindingGeneric
        {
            Children =
            {
                new AdaptiveText
                {
                    Text = "title"
                },

                new AdaptiveText
                {
                    Text = "content"
                }
            }
        }
    };

    var toastContent = new ToastContent
    {
        Visual = visual,

        Launch = new QueryString
        {
            { "action", "viewConversation" },
            { "conversationId", "id" }

        }.ToString()
    };

    var toast = new ToastNotification(toastContent.GetXml());
    ToastNotificationManager.CreateToastNotifier().Show(toast);
}

enter image description here

关于c# - 桌面上的 UWP 全局 MessageDialog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45237476/

相关文章:

c# - 如何使用 C# 中的一个函数将 SqlDependency 和 SignalR 与 2 个不同的数据库一起使用?

c# - 打印控件

c# - 我可以迁移到 Entity Framework 中没有迁移的情况下创建的数据库吗?

xaml - 如何在 (Uno 2.4) 中使用 Microsoft.UI.Xaml.Controls 资源

c# - 'TestContext' 不包含 'DataRow' 的定义

.net - 为什么 MobileServiceSQLiteStore 数据库中的createdAt、deleted和updatedAt列为空?

c# - protected 内部成员的可访问性不一致

C# Automapper 如何使用 customresolver 中的属性进行解析

c# - 将 VisualStateManager VisualState 绑定(bind)到 View 模型?

button - Xamarin.Forms:在 UWP 中自定义悬停按钮样式