// Выбираем елементы категории оборудование
ElementCategoryFilter filter = new ElementCategoryFilter(BuiltInCategory.OST_MechanicalEquipment);
FilteredElementCollector collector = new FilteredElementCollector(doc);
collector.WherePasses(filter);
ICollection<Element> found = collector.ToElements();
//Привязываем текстовые параметры к элементам категории Оборудование
CategorySet myCategories = Application.Create.NewCategorySet(); //создание набора категорий
Category myCategory = doc.Settings.Categories.get_Item(BuiltInCategory.OST_MechanicalEquipment); //выбор в набор категорий категории Оборудование
myCategories.Insert(myCategory);
Binding typeBinding = Application.Create.NewTypeBinding(myCategories); //Создание объекта InstanceBinding с выбранной категорией
BindingMap bindingMap = doc.ParameterBindings; //Получение карты привязки текущего документа
foreach (Definition def in myDefinitions)
{
doc.ParameterBindings.Insert(def, typeBinding, BuiltInParameterGroup.PG_TEXT);
}
//Установка значений текстовых параметров
foreach (Element elem in found)
{
for ( i = 0; i<textparam.Count; i++)
{
if (elem.get_Parameter(trueparam[i]) == null)
{
elem.get_Parameter(textparam[i]).Set("-");
}
}
}