var elementType = doc.GetElement(element.GetTypeId());
var familySymbol = elementType as FamilySymbol;
if (familySymbol != null) // типоразмер пользовательского семейства семейс
{
var family = familySymbol.Family;
TaskDialog.Show("Family types",
family
.Symbols
.Cast<FamilySymbol>()
.Select(x => x.Name)
.Aggregate((s, s1) => s + "\n" + s1));
// В Revit 2015 Symbols - Obsolete, лучше так:
TaskDialog.Show("Family types",
family
.GetFamilySymbolIds()
.Select(doc.GetElement)
.Select(x => x.Name)
.Aggregate((s, s1) => s + "\n" + s1));
return Result.Succeeded;
}
// иначе - типоразмер системного семейства (стены, трубы и т.д.)
var collector = new FilteredElementCollector(doc);
var types = collector.OfClass(elementType.GetType()).ToElements();
TaskDialog.Show("Family types",
types
.Select(x => x.Name)
.Aggregate((s, s1) => s + "\n" + s1));