Пример текста макроса уровня документа на C#

Тексты успешно скомпонованных макросов уровня документа сохраняются в файле RVT после сохранения этого файла. Файлы проекта удаляются из временной папки, когда пользователь выходит из приложения Revit.

В IDE для метода используйте следующую программу:

public
void MyFirstMacroDocCS()
{
    Autodesk.Revit.DB.XYZ origin = Document.Application.Create.NewXYZ(0.0, 0.0, 0.0); 
    string strText = "My First Macro, Doc level, C#!";
    double lineWidth = 4.0 / 12.0;

    ElementId defaultTextTypeId = Document.GetDefaultElementTypeId(ElementTypeGroup.TextNoteType);
    TextNoteOptions opts = new TextNoteOptions(defaultTextTypeId);

    using (Autodesk.Revit.DB.Transaction transaction = new Autodesk.Revit.DB.Transaction(Document, "NewTextNote"))
    {
        transaction.Start();
        Autodesk.Revit.DB.View View = Document.ActiveView;
        TextNote.Create(Document, View.Id, origin, lineWidth, strText, opts);
        transaction.Commit();
    }
} 

Совет: Не забудьте скомпоновать проект в Revit macro IDE перед его запуском из Диспетчера макросов.

В данном примере при компоновке проекта в Revit macro IDE также обратите внимание на то, что выполняется компоновка проекта DocCSharp. Программный текст макроса уровня документа на языке C# находится в файле ThisApplication.cs. Можно воспользоваться Проводником проектов IDE для просмотра его временного местоположения на диске.

Текстовое поле, размещенное макросом