public static ElementId FindLevelId(Document doc, string name)
{
FilteredElementCollector collectorLevels = new FilteredElementCollector(doc);
collectorLevels.OfClass(typeof(Level));
// Now use LINQ to see if one exists with provided name.
ElementId idLevel = ElementId.InvalidElementId;
try
{
Element levelMatched = collectorLevels.First(level => level.Name.Equals(name));
if (levelMatched != null)
idLevel = levelMatched.Id;
}
catch (System.InvalidOperationException)
{
}
catch (System.ArgumentNullException)
{
}
return idLevel;
}
ElementId levelFirstId = FindLevelId(activeDoc, level_first);
ElementLevelFilter filterElementsOnLevelOne = new ElementLevelFilter(levelFirstId);
FilteredElementCollector filteredElementCollectorWallOne = new FilteredElementCollector(activeDoc);
var LevelOneParam = filteredElementCollectorWallOne.OfClass(typeof(Floor));
LevelOneParam.OfCategory(BuiltInCategory.OST_Floors);
LevelOneParam.WherePasses(filterElementsOnLevelOne);
foreach (Floor floor in LevelOneParam)
{
Parameter parameterDescription = floor.get_Parameter("Описание1");
Parameter parameterMatName = floor.get_Parameter(BuiltInParameter.MATERIAL_NAME);
var text = parameterMatName.AsString();
var res = floor.get_Parameter("Описание1").Set(" слово ");
}