ElementFilterIsAcceptableForParameterFilterElement Method (Document, ISet(ElementId), ElementFilter)


Checks that an ElementFilter is acceptable for use in defining the filtering rules for a given list of categories (i.e., for view filtering).

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

Syntax

C#
public static bool ElementFilterIsAcceptableForParameterFilterElement(
	Document aDocument,
	ISet<ElementId> categories,
	ElementFilter elementFilter
)
Visual Basic
Public Shared Function ElementFilterIsAcceptableForParameterFilterElement ( _
	aDocument As Document, _
	categories As ISet(Of ElementId), _
	elementFilter As ElementFilter _
) As Boolean
Visual C++
public:
static bool ElementFilterIsAcceptableForParameterFilterElement(
	Document^ aDocument, 
	ISet<ElementId^>^ categories, 
	ElementFilter^ elementFilter
)

Parameters

aDocument
Type: Autodesk.Revit.DB Document
The document in which to create the ParameterFilterElement.
categories
Type: System.Collections.Generic ISet ElementId
The categories for the new ParameterFilterElement.
elementFilter
Type: Autodesk.Revit.DB ElementFilter
The ElementFilter to validate.

Remarks

ElementFilter is either an ElementParameterFilter or an ElementLogicalFilter representing a Boolean combination of ElementParameterFilters. In addition, we check that each ElementParameterFilter satisfies the following conditions: Its array of FilterRules is not empty and contains:
  • Any number of FilterRules of type FilterValueRule, FilterInverseRule, and SharedParameterApplicableRule or
  • Exactly one FilterCategoryRule containing only one category from categories stored by this ParameterFilterElement or
  • Exactly two rules: the first one is a FilterCategoryRule containing only one category from categories stored by this ParameterFilterElement and the second one is a FilterRule of type FilterValueRule, FilterInverseRule, or SharedParameterApplicableRule.
Note that cases in the second and third bullet are currently allowed only if the parent node of ElementParameterFilter is LogicalOrFilter.

Exceptions

Exception Condition
Autodesk.Revit.Exceptions ArgumentNullException A non-optional argument was NULL

See Also