ScheduledToastNotification 构造函数

定义

重载

ScheduledToastNotification(XmlDocument, DateTime)

创建并初始化将仅显示一次 的 ScheduledToastNotification 的新实例。

ScheduledToastNotification(XmlDocument, DateTime, TimeSpan, UInt32)

Windows 10中已弃用。 在 Windows 8 系统上,创建并初始化 ScheduledToastNotification 的新实例,该实例在最初出现的指定时间后重新出现。 在 Windows 10 上,此函数等效于 ScheduledToastNotification (XmlDocument、DateTime) 。 若要在 Windows 10 中实现相同的推迟间隔行为,可以在 Toast 上使用按钮

ScheduledToastNotification(XmlDocument, DateTime)

创建并初始化将仅显示一次 的 ScheduledToastNotification 的新实例。

public:
 ScheduledToastNotification(XmlDocument ^ content, DateTime deliveryTime);
 ScheduledToastNotification(XmlDocument const& content, DateTime const& deliveryTime);
public ScheduledToastNotification(XmlDocument content, System.DateTimeOffset deliveryTime);
function ScheduledToastNotification(content, deliveryTime)
Public Sub New (content As XmlDocument, deliveryTime As DateTimeOffset)

参数

content
XmlDocument

定义 Toast 通知内容的 XML。

deliveryTime
DateTime DateTimeOffset

Windows 应显示 Toast 通知的日期和时间。 必须在此时间之前调用 AddToSchedule

示例

以下示例演示了一个 Toast 通知,该通知计划在一小时内显示,包括使用此构造函数创建通知。

var Notifications = Windows.UI.Notifications;
var currentTime = new Date();
var seconds = 60;
var dueTime = new Date(currentTime.getTime() + seconds * 60 * 1000);
var idNumber = Math.floor(Math.random() * 100000000);  // Generates a unique ID number for the notification.

// Set up the notification text.
var toastXml = Notifications.ToastNotificationManager.getTemplateContent(Notifications.ToastTemplateType.toastText02);
var strings = toastXml.getElementsByTagName("text");
strings[0].appendChild(toastXml.createTextNode(This is a scheduled toast notification));
strings[1].appendChild(toastXml.createTextNode("Received: " + dueTime.toLocaleTimeString()));

// Create the toast notification object.
var toast = new Notifications.ScheduledToastNotification(toastXml, dueTime);
toast.id = "Toast" + idNumber;

// Add to the schedule.
Notifications.ToastNotificationManager.createToastNotifier().addToSchedule(toast);

另请参阅

适用于

ScheduledToastNotification(XmlDocument, DateTime, TimeSpan, UInt32)

Windows 10中已弃用。 在 Windows 8 系统上,创建并初始化 ScheduledToastNotification 的新实例,该实例在最初出现的指定时间后重新出现。 在 Windows 10 上,此函数等效于 ScheduledToastNotification (XmlDocument、DateTime) 。 若要在 Windows 10 中实现相同的推迟间隔行为,可以在 Toast 上使用按钮

public:
 ScheduledToastNotification(XmlDocument ^ content, DateTime deliveryTime, TimeSpan snoozeInterval, unsigned int maximumSnoozeCount);
 ScheduledToastNotification(XmlDocument const& content, DateTime const& deliveryTime, TimeSpan const& snoozeInterval, uint32_t const& maximumSnoozeCount);
public ScheduledToastNotification(XmlDocument content, System.DateTimeOffset deliveryTime, System.TimeSpan snoozeInterval, uint maximumSnoozeCount);
function ScheduledToastNotification(content, deliveryTime, snoozeInterval, maximumSnoozeCount)
Public Sub New (content As XmlDocument, deliveryTime As DateTimeOffset, snoozeInterval As TimeSpan, maximumSnoozeCount As UInteger)

参数

content
XmlDocument

定义 Toast 通知内容的 XML。

deliveryTime
DateTime DateTimeOffset

Windows 应首先显示 Toast 通知的日期和时间。 必须在此时间之前调用 AddToSchedule

snoozeInterval
TimeSpan TimeSpan

通知出现之间的时间量。 若要有效,此值必须不少于 60 秒且不超过 60 分钟。

maximumSnoozeCount
UInt32

unsigned int

uint32_t

显示此通知的最大次数。 有效值范围为 1 到 5。

示例

以下示例演示了一个 Toast 通知,该通知计划在一小时内显示,包括使用此构造函数创建通知,将推迟间隔指定为 60 秒,最多 5 次以显示通知。

var Notifications = Windows.UI.Notifications;
var currentTime = new Date();
var seconds = 60;
var dueTime = new Date(currentTime.getTime() + seconds * 60 * 1000);
var idNumber = Math.floor(Math.random() * 100000000);  // Generates a unique ID number for the notification.

// Set up the notification text.
var toastXml = Notifications.ToastNotificationManager.getTemplateContent(Notifications.ToastTemplateType.toastText02);
var strings = toastXml.getElementsByTagName("text");
strings[0].appendChild(toastXml.createTextNode(This is a scheduled toast notification));
strings[1].appendChild(toastXml.createTextNode("Received: " + dueTime.toLocaleTimeString()));

// Create the toast notification object.
var toast = new Notifications.ScheduledToastNotification(toastXml, dueTime, 60 * 1000, 5);
toast.id = "Toast" + idNumber;

// Add to the schedule.
Notifications.ToastNotificationManager.createToastNotifier().addToSchedule(toast);

注解

这种类型的暂停间隔计划 Toast 通知适用于类似暂停警报的功能。 例如,通知可以每五分钟显示一次,直到达到最大暂停计数,除非应用从计划中显式删除通知。

重要

用户通过触摸或单击激活通知后,应用负责从计划中删除通知。 否则可能会导致通知重新出现,直到达到最大暂停计数,即使用户已经处理过。

如果要计划长时间的暂停间隔(如月或年),建议使用单独的计划 Toast,而不是此方法。 这将避免夏令时或闰年导致的计时错误。

以下代码显示了对此方法的调用,该方法每五分钟显示一次从 myData 开始的 Toast,最多显示三次。

new ScheduledToastNotification(toast1, myDate, 60000, 3)

另请参阅

适用于