RVTDocs.com

ParameterFilterElement.ElementFilterIsAcceptableForParameterFilterElement(Document, ISet<ElementId>, ElementFilter)

Method
Description:
Checks that an ElementFilter is acceptable for use in defining the filtering rules for a given list of categories (i.e., for view filtering).
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.
Syntax
public static bool ElementFilterIsAcceptableForParameterFilterElement(
	Document aDocument,
	ISet<ElementId> categories,
	ElementFilter elementFilter
)
Parameters
Parameter Type Description
aDocument Document The document in which to create the ParameterFilterElement.
categories ISet The categories for the new ParameterFilterElement.
elementFilter ElementFilter The ElementFilter to validate.
Return Value
Exceptions
Exception Condition
ArgumentNullException A non-optional argument was null