如何使用 C# 从 Windows 10 日历中检索 UWP 中的约会

Posted

技术标签:

【中文标题】如何使用 C# 从 Windows 10 日历中检索 UWP 中的约会【英文标题】:How to retrieve appointments in UWP from a Windows 10 calendar using C# 【发布时间】:2016-09-06 17:52:35 【问题描述】:

我正在使用 C# 在 Windows 10 中创建通用 Windows 应用程序,该应用程序在 Windows 日历应用程序中管理约会。我可以添加约会,并且可以使用 ID 编辑或删除它们。但是,如果不检索它们并进行过滤,我将不知道它们的 ID。

有没有人有使用 C# 在 Windows 10 中检索日历约会列表的经验?

【问题讨论】:

【参考方案1】:

据MSDN:

通过 Windows.ApplicationModel.Appointments 命名空间,您可以在用户的​​日历应用中创建和管理约会。

【讨论】:

【参考方案2】:

您可以使用 Windows.ApplicationModel.Appointments.AppointmentStore 类检索所有日历约会。

在本例中,我将在接下来的 24 小时内检索约会

AppointmentStore appointmentStore = await AppointmentManager.RequestStoreAsync(AppointmentStoreAccessType.AllCalendarsReadOnly);

var dateToShow = DateTime.Now.AddDays(0);
var duration = TimeSpan.FromHours(24);

var appCalendars = await appointmentStore.FindAppointmentsAsync(dateToShow, duration);
foreach (var calendar in appCalendars)

[...]

记得在 package.appxmanifest 中授予对 Apointments Capabilities 的访问权限

【讨论】:

很好的答案!有用!但由于某种原因,在我接下来的 4 个事件中,它只加载第 3 个事件:/(即使它们都在范围内)。有没有其他人经历过这种行为?

以上是关于如何使用 C# 从 Windows 10 日历中检索 UWP 中的约会的主要内容,如果未能解决你的问题,请参考以下文章

如何从 C# Windows 应用程序控制 Windows 10 移动热点设置 [重复]

如何使用c#从其他形式的菜单项中显示月历上的当前日期

如何使用 c# 从 Windows 窗体向用户显示默认的 Windows 身份验证提示?

如何设置会计月日历,或将日历从 10 月 10 日到 9 月 9 日排序?

如何在 c# asp.net 中使用完整的日历

在 c# 中使用 javascript 日历设置值后如何获取文本框的文本?