在C#中将Outlook TaskItem标记为已完成



我正在创建一个状态标记为Completed 的Outlook任务

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

CCD_ 1是CCD_。但它仍然为0,并且任务未标记为已完成。我尝试过的将任务标记为已完成的方法如下:

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

似乎没有任何效果,Status仍然是0。有人能建议标记展望任务Complete的正确方法吗?

TaskItem.MarkComplete方法将任务标记为已完成,并将Outlook.OlTaskStatus0设置为"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();
}

最新更新