Надстройка VSTO для MS Project: отображение всех задач сразу

Код ниже (в стандартном классе ThisAddIn надстройки VSTO) извлекает сведения о задачах, которые будут добавлены в MS Project (2013), а затем добавляет фактические задачи в коллекцию задач проекта. Проблема заключается в том, что проект позволяет добавлять задачи по одной и перекрашивать (обновлять) представление проекта каждый раз, когда задача добавляется в коллекцию задач. Это выглядит раздражающим. До сих пор я нашел и использовал приложение.ScreenUpdating свойство скрывать мигание.

Было бы неплохо подготовить набор задач и присоединить их все вместе к активному проекту. Может ли кто-нибудь более опытный указать путь к достижению этой цели? Если это возможно вообще с текущей надстройкой MS Project API?

Большое спасибо.

....
using MSProject = Microsoft.Office.Interop.MSProject;
....

public partial class ThisAddIn
{
    ....

    private void ShowTasks()
    {
        MSProject.Project project = this.Application.ActiveProject;
        // TaskInfo is a custom DTO type
        IEnumerable<TaskInfo> dataSource = GetDataSourceSomehow();

        this.Application.ScreenUpdating = false;
        this.Application.Calculation = MSProject.PjCalculation.pjManual;

        foreach(TaskInfo info in dataSource)
        {
            MSProject.Task task = project.Tasks.Add(info.TaskName);
        }

        this.Application.ScreenUpdating = true;
    }
}

1 ответ