在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();
if (openUIViews.Count > 1)
{
var targetView = openUIViews.FirstOrDefault(v => v.ViewId == activeView.Id);
if (targetView != null)
{
targetView.Close();
}
}
return Result.Succeeded;
}
}```