Revit 获取图签信息并批量进行修改

        /// <summary>
        /// 获取图签信息并批量进行修改
        /// </summary>
        /// <param name="UiDoc"></param>
        public static void GetViewSheetData(UIDocument UiDoc)
        {
            try
            {
                Document doc = UiDoc.Document;

                FilteredElementCollector collector = new FilteredElementCollector(doc);
                collector.OfCategory(BuiltInCategory.OST_TitleBlocks).OfClass(typeof(FamilyInstance));
                FamilyInstance fs = collector.FirstElement() as FamilyInstance;
                Transaction tran = new Transaction(doc);
                tran.Start("changeParameter" );
                foreach (Parameter p in fs.Parameters)
                {
                    string sname = p.Definition.Name;
                    string svalue = p.AsString();
                    var isONList = ExcelData.Where(m => m.HeaderName == sname).ToList();

                    if (isONList.Count > 0)
                    {
                        p.Set(isONList.Last().DataValue);
                    }
                }
                string nameString = string.Empty;
                doc.Regenerate();
                tran.Commit();
                importView.Close(); ;
            }
            catch (Exception ex)
            {
                TaskDialog.Show("Error", ex.Message);
            }
        }

发布了7 篇原创文章 · 获赞 0 · 访问量 8759

猜你喜欢

转载自blog.csdn.net/weixin_31026691/article/details/104951721