Revit二次开发:让代码选中的Element高亮
原创
©著作权归作者所有:来自51CTO博客作者lreach的原创作品,请联系作者获取转载授权,否则将追究法律责任
环境:Revit2018 win10
不论是UIDocument.Selection.PickObject还是UIDocument.Selection.PickElementsByRectangle,诸如此类,代码运行,然后用户去点选或框选,选择后,所选的Element并未高亮显示,导致你可能会忘记选的什么。
为解决此问题,需要在选择后再加一步代码
以矩形框选为例
UIDocument uiDoc;
Selection sels=uiDoc.Selection;
List<Element> list=sels.PickElementsByRectangle();
List<ElementId>idList=new List<ElementId>();
list.Foreach(l=>
{
idList.Add(l.Id);
});
sels.SetElementIds(idList);
如上将选中的物体加入到一个ElementId的List列表中,再将列表通过
UIDocument.Selection.SetElementIds(IList<ElementId>)
加入到要显示高亮的选中列表中,如此,你选择的就会高亮显示