Loading

Loading

Revit二次开发-关闭当前文档已打开的视图

在revit二次开发中,或许会用到用api来关闭当前活动文档已打开的视图。分享一下代码~

[Transaction(TransactionMode.Manual)]
public class CloseUIViews : IExternalCommand
    {
        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
        {
            var uidoc = commandData.Application.ActiveUIDocument;
            var activeView = uidoc.ActiveGraphicalView;
            var openUIViews = uidoc.GetOpenUIViews();
            //如果当前已打开的视图个数少于2的话 关闭当前视图会抛异常
            if (openUIViews.Count > 1)
            {
                var targetView = openUIViews.FirstOrDefault(v => v.ViewId == activeView.Id);
                if (targetView != null)
                {
                    targetView.Close();
                }
            }
            return Result.Succeeded;
        }
    }
posted @ 2022-06-10 23:48  热情定无变  阅读(147)  评论(0)    收藏  举报