选择物体遍历的到ids
直接开启事务创建组
代码如下:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using Autodesk.Revit.Attributes;using Autodesk.Revit.DB;using Autodesk.Revit.UI;namespace Revit创建组{[TransactionAttribute(TransactionMode.Manual)]public class Class1 : IExternalCommand{public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements){//应用UIApplication uiApp = commandData.Application;//定义用户文件夹UIDocument uIDocument = uiApp.ActiveUIDocument;//转为DocumentDocument document = uIDocument.Document;//选择要成组的IList<Reference> references = uIDocument.Selection.PickObjects(Autodesk.Revit.UI.Selection.ObjectType.Element);List<ElementId> ids = new List<ElementId>();//获取idsforeach (Reference reference in references){ids.Add(reference.ElementId);}using (Transaction transaction = new Transaction(document, "创建组")){transaction.Start();//创建组document.Create.NewGroup(ids);mit();TransactionStatus transactionStatus = transaction.GetStatus();if (transactionStatus == mitted){TaskDialog.Show("提示", "创建成功!");}}return Result.Succeeded;}}}