在Revit中创建明细表的时候,可以使用过滤条件,例如我可以限定明细表里面都是标高为“标高1”的元素。
由上图可见,过滤器里面的过滤条件会根据选择的类别而变化,那么有没有办法知道某个类别支持哪些参数呢?
答案是使用TableView.GetAvailableParameters,该方法是用来获取和某个类别相关的那些可以被列入明细表中的内建的参数列表的,同样,凡是可以被列入明细表的参数都是可以使用过滤条件的,所以,示例代码可以如下:
var availableParameterIds = TableView.GetAvailableParameters(RevitDoc, new ElementId(BuiltInCategory.OST_DuctTerminal));
foreach (var pid in availableParameterIds)
{
var builtinParameter = (BuiltInParameter)pid.IntegerValue;
//work with the BuiltInParameter
}