ISelectionFilter Interface |
An interface that provides the ability to filter objects during a selection operation.
Namespace: Autodesk.Revit.UI.SelectionAssembly: RevitAPIUI (in RevitAPIUI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntaxpublic interface ISelectionFilter
Public Interface ISelectionFilter
public interface class ISelectionFilter
type ISelectionFilter = interface end
The ISelectionFilter type exposes the following members.
Methods | Name | Description |
---|
 | AllowElement | Override this pre-filter method to specify if the element should be permitted to be selected. |
 | AllowReference | Override this post-filter method to specify if a reference to a piece of geometry is permitted to be selected. |
Top
Examplepublic static IList<Element> GetManyRefByRectangle(UIDocument doc)
{
ReferenceArray ra = new ReferenceArray();
ISelectionFilter selFilter = new MassSelectionFilter();
IList<Element> eList = doc.Selection.PickElementsByRectangle(selFilter,
"Select multiple faces") as IList<Element>;
return eList;
}
public class MassSelectionFilter : ISelectionFilter
{
public bool AllowElement(Element element)
{
if (element.Category.Name == "Mass")
{
return true;
}
return false;
}
public bool AllowReference(Reference refer, XYZ point)
{
return false;
}
}
Public Shared Function GetManyRefByRectangle(doc As UIDocument) As IList(Of Element)
Dim ra As New ReferenceArray()
Dim selFilter As ISelectionFilter = New MassSelectionFilter()
Dim eList As IList(Of Element) = TryCast(doc.Selection.PickElementsByRectangle(selFilter, "Select multiple faces"), IList(Of Element))
Return eList
End Function
Public Class MassSelectionFilter
Implements ISelectionFilter
Public Function AllowElement(element As Element) As Boolean Implements ISelectionFilter.AllowElement
If element.Category.Name = "Mass" Then
Return True
End If
Return False
End Function
Public Function AllowReference(refer As Reference, point As XYZ) As Boolean Implements ISelectionFilter.AllowReference
Return False
End Function
End Class
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.
See Also