FilteredElementCollectorOfClass Method

Applies an ElementClassFilter to the collector.

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public FilteredElementCollector OfClass(
	Type type
)

Parameters

type  Type
The element type.

Return Value

FilteredElementCollector
A handle to this collector. This is the same collector that has just been modified, returned so you can chain multiple calls together in one line.
Exceptions
ExceptionCondition
ArgumentException The input type is not a subclass of Element. -or- The input type is of an element type that exists in the API, but not in Revit's native object model.
ArgumentNullException A non-optional argument was null
Remarks
Only elements whose class is an exact match to the input class, or elements whose type is derived from the input class will pass the collector.

There is a small subset of Element subclasses in the API that are not supported by this filter. These classes exist in the API, but not in Revit's native object model, which means that this filter doesn't support them. In order to use a class filter to find elements of these types, it is necessary to use a higher level class and then process the results further to find elements matching only the subclass. For a list of subclasses affected by this restriction, consult the documentation for ElementClassFilter.

If you have an active iterator to this collector it will be stopped by this call.

Example
// Use OfClass method to apply an ElementClassFilter and find Levels in the document
FilteredElementCollector collector = new FilteredElementCollector(document);
ICollection<Element> levels = collector.OfClass(typeof(Level)).ToElements();
See Also