Creates a note block.
Namespace: Autodesk.Revit.DBAssembly: RevitAPI (in RevitAPI.dll) Version: 26.4.0.0 (26.4.0.0)
Syntax
C#
public static ViewSchedule CreateNoteBlock(
Document document,
ElementId familyId
)
Parameters
- document Document
-
The document to which the new schedule will be added.
- familyId ElementId
-
The ID of the family whose elements will be included in the schedule.
Return Value
ViewSchedule
The newly created schedule.
Exceptions
| Exception | Condition |
|---|
| ArgumentException |
document is not a project document.
-or-
familyId is not a valid family for a note block.
|
| ArgumentNullException |
A non-optional argument was null
|
| ModificationForbiddenException |
The document is in failure mode: an operation has failed,
and Revit requires the user to either cancel the operation
or fix the problem (usually by deleting certain elements).
-or-
The document is being loaded, or is in the midst of another
sensitive process.
|
| ModificationOutsideTransactionException |
The document has no open transaction.
|
Remarks
A note block is a schedule of the Generic Annotations category
that shows elements of a single family rather than all elements
in the category.
Example
C#
ViewSchedule noteBlockSchedule = null;
using (Transaction transaction = new Transaction(doc, "Creating Note BLock"))
{
ICollection<ElementId> noteblockFamilies = ViewSchedule.GetValidFamiliesForNoteBlock(doc);
ElementId symbolId = noteblockFamilies.First<ElementId>();
if (!symbolId.Equals(ElementId.InvalidElementId))
{
transaction.Start();
noteBlockSchedule = ViewSchedule.CreateNoteBlock(doc, symbolId);
}
if (null != areaSchedule)
{
transaction.Commit();
}
else
{
transaction.RollBack();
}
}
VB
Dim noteBlockSchedule As ViewSchedule = Nothing
Using transaction As New Transaction(doc, "Creating Note BLock")
Dim noteblockFamilies As ICollection(Of ElementId) = ViewSchedule.GetValidFamiliesForNoteBlock(doc)
Dim symbolId As ElementId = noteblockFamilies.First()
If Not symbolId.Equals(ElementId.InvalidElementId) Then
transaction.Start()
noteBlockSchedule = ViewSchedule.CreateNoteBlock(doc, symbolId)
End If
If areaSchedule IsNot Nothing Then
transaction.Commit()
Else
transaction.RollBack()
End If
End Using
See Also
Reference