HI @Extraneous @eN27 @jeremy_tammik
@eN27 Thank you for the Suggestion, I make a summary of complete Query Thread. To extract the List of ForgeTypeId Class from GroupTypeId Class .
Suggestion-01
@jeremy_tammik and me suggested to use System.Reflection Namespace | Microsoft Learn from .NET. Kindly refer the below code snippet for additional reference.
Suggestion-01 Sample Code Snippet
///Get all Parameter Group Value in List
List<PropertyInfo> propertiesInfo = typeof(GroupTypeId).GetProperties().ToList();
Dictionary<ForgeTypeId, string> builtInParameterNames = new Dictionary<ForgeTypeId, string>();
///To Get all BuiltInParameter Group Names
foreach (PropertyInfo property in propertiesInfo)
{
builtInParameterNames.Add(property.GetValue(property)as ForgeTypeId, property.Name);
}
Suggestion-02
@eN27 suggested to use Revit API's In-Built GetAllBuiltInGroups Method. Kindly refer the below code snippet for additional reference.
Suggestion-02 Sample Code Snippet
///Get all Parameter Group Value in List
var groupIds= ParameterUtils.GetAllBuiltInGroups();
Dictionary<ForgeTypeId, string> builtInParameterNames = new Dictionary<ForgeTypeId, string>();
///To Get all BuiltInParameter Group Names
foreach (ForgeTypeId groupId in groupIds)
{
builtInParameterNames.Add(groupId, LabelUtils.GetLabelForGroup(groupId));
}
Hope this Helps 🙂
Thanks & Regards,
Mohamed Arshad K