Изменить продолжительность Windows Toast c # - PullRequest
0 голосов
/ 20 сентября 2018

Итак, я посылаю тост из моего консольного приложения с некоторой информацией, которая прекрасно работает, единственная проблема заключается в том, что мне нужно сделать его чуть дольше видимым.Возможно ли это как-то с помощью c #, я знаю только, что вы можете изменить это в настройках windows.Также я хочу иметь различную продолжительность для каждого тоста.

Мой код выглядит так:

        XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(
        ToastTemplateType.ToastImageAndText02);

        XmlNodeList stringElements = toastXml.GetElementsByTagName("text");
        stringElements[0].AppendChild(toastXml.CreateTextNode(title));
        stringElements[1].AppendChild(toastXml.CreateTextNode(message));

        String imagePath = "file:///" + image;
        XmlNodeList imageElements = toastXml.GetElementsByTagName("image");
        imageElements[0].Attributes.GetNamedItem("src").NodeValue = imagePath;

        ToastNotification toast = new ToastNotification(toastXml);

        toast.Activated += Toast_Activated;

        ToastNotificationManager.CreateToastNotifier(appId).Show(toast);

Обновление # 1

Я нашелиз-за того, что ToastNotification получил свойство с именем ExpirationTime, я просто не знаю, как его использовать, поскольку оно принимает DateTimeOffset.Это истечет, пока это не будет как 12:00, когда я установил DateTimeOffset в 12:00?Из моих тестов это ничего не меняет.

1 Ответ

0 голосов
/ 17 августа 2019

Время истечения используется, чтобы установить, как долго тост должен оставаться в центре действий.

Если вы хотите, чтобы ваш тост отображался дольше 7 секунд, вы можете изменить свойство сценария на «Напоминание».

https://docs.microsoft.com/en-us/windows/uwp/design/shell/tiles-and-notifications/adaptive-interactive-toasts

...