在 C# 中将 Outlook 任务项标记为已完成

发布于 2025-01-11 20:47:37 字数 870 浏览 3 评论 0原文

我正在创建状态标记为“已完成”的 Outlook 任务

                    if (task != null)
                    {
                        task.Subject = mi.Subject;
                        task.Status = (Outlook.OlTaskStatus)2; //Status remains 0
                        task.StartDate = DateTime.Now;
                        task.Save();
                    }

Outlook.OlTask​​Status 是一个 enum,“完成”状态的值为 2。但它仍然为 0,并且任务未标记为完全的。我尝试过的将任务标记为已完成的方法如下:

  1. task.Status = Outlook.OlTask​​Status.olTask​​Complete;
  2. task.MarkComplete();
  3. task.Complete=true;
  4. task.Status = (Outlook.OlTask​​Status)2;

似乎没有任何效果,并且 Status 仍然存在<代码>0。有人可以建议将 Outlook 任务标记为完成的正确方法吗?

I'm creating an Outlook Task with status marked as Completed

                    if (task != null)
                    {
                        task.Subject = mi.Subject;
                        task.Status = (Outlook.OlTaskStatus)2; //Status remains 0
                        task.StartDate = DateTime.Now;
                        task.Save();
                    }

Outlook.OlTaskStatus is an enum and value of Complete state is 2. But it remains 0 and task is not marked as completed. Number of ways i've tried till to mark task as completed are as following:

  1. task.Status = Outlook.OlTaskStatus.olTaskComplete;
  2. task.MarkComplete();
  3. task.Complete=true;
  4. task.Status = (Outlook.OlTaskStatus)2;

Nothing appears to be effective and Status is still 0. Can someone please suggest the right way to mark an outlook task Complete ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

将军与妓 2025-01-18 20:47:37

TaskItem.MarkComplete 方法标记任务为已完成,并将 PercentComplete 设置为“100%”,将 Complete 设置为 true,并将 DateCompleted 设置为当前日期。

我认为您需要更改属性和方法的调用顺序:

if (task != null)
{
    task.Subject = mi.Subject;
    task.StartDate = DateTime.Now;
    task.Save();
   
    // the following call should set the status
    task.MarkComplete();
    task.Save();
}

The TaskItem.MarkComplete method marks the task as completed and sets PercentComplete to "100%", Complete to true, and DateCompleted to the current date.

I think you need to change the order in which properties and methods are called:

if (task != null)
{
    task.Subject = mi.Subject;
    task.StartDate = DateTime.Now;
    task.Save();
   
    // the following call should set the status
    task.MarkComplete();
    task.Save();
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文