NewSubcategory Method


Add a new subcategory into the Autodesk Revit document.

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 21.0.0.0 (21.1.1.109)

Syntax

C#
public Category NewSubcategory(
	Category parentCategory,
	string name
)
Visual Basic
Public Function NewSubcategory ( _
	parentCategory As Category, _
	name As String _
) As Category
Visual C++
public:
Category^ NewSubcategory(
	Category^ parentCategory, 
	String^ name
)

Parameters

parentCategory
Type: Autodesk.Revit.DB Category
The parent category.
name
Type: System String
The new category name.

Return Value

If successful, the newly created subcategory.

Examples

Copy C#
public void AssignSubCategory(Document document, GenericForm extrusion)
{
    // create a new subcategory 
    Category cat = document.OwnerFamily.FamilyCategory;
    Category subCat = document.Settings.Categories.NewSubcategory(cat, "NewSubCat");

    // create a new material and assign it to the subcategory
    ElementId materialId = Material.Create(document, "Wood Material");
    subCat.Material = document.GetElement(materialId) as Material;

    // assign the subcategory to the element
    extrusion.Subcategory = subCat;
}
Copy VB.NET
Public Sub AssignSubCategory(document As Document, extrusion As GenericForm)
    ' create a new subcategory 
    Dim cat As Category = document.OwnerFamily.FamilyCategory
    Dim subCat As Category = document.Settings.Categories.NewSubcategory(cat, "NewSubCat")

    ' create a new material and assign it to the subcategory
    Dim materialId As ElementId = Material.Create(document, "Wood Material")
    subCat.Material = TryCast(document.GetElement(materialId), Material)

    ' assign the subcategory to the element
    extrusion.Subcategory = subCat
End Sub

Exceptions

Exception Condition
Autodesk.Revit.Exceptions ArgumentNullException Thrown when the input argument-"parentCategory" or "name"-is a null reference ( Nothing in Visual Basic) .
Autodesk.Revit.Exceptions ArgumentException Thrown when the input argument-"parentCategory"-cannot add subcategory. Thrown when the input argument-"name"-is an illegal name.
Autodesk.Revit.Exceptions InvalidOperationException Thrown when subcategory creation failed.

See Also