Parameters Property


Retrieves a set containing all of the parameters that are contained within the element.

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 2015.0.0.0 (2015.0.0.0)

Syntax

C#
public ParameterSet Parameters { get; }
Visual Basic
Public ReadOnly Property Parameters As ParameterSet
	Get
Visual C++
public:
property ParameterSet^ Parameters {
	ParameterSet^ get ();
}

Remarks

The Parameters property contains a set of all the parameters that the element supports. These parameters are displayed in the Element properties dialog in the Autodesk Revit interface. These parameters can be retrieved and set via the parameter objects stored in this set.

Examples

Copy C#
void GetElementParameterInformation(Document document, Element element)
{
    // Format the prompt information string
    String prompt = "Show parameters in selected Element:";

    StringBuilder st = new StringBuilder();
    // iterate element's parameters
    foreach (Parameter para in element.Parameters)
    {
        st.AppendLine(GetParameterInformation(para, document));
    }

    // Give the user some information
    TaskDialog.Show("Revit",prompt);
}

String GetParameterInformation(Parameter para, Document document)
{
    string defName = para.Definition.Name + @"\t";
    // Use different method to get parameter data according to the storage type
    switch (para.StorageType)
    {
        case StorageType.Double:
            //covert the number into Metric
            defName += " : " + para.AsValueString();
            break;
        case StorageType.ElementId:
            //find out the name of the element
            Autodesk.Revit.DB.ElementId id = para.AsElementId();
            if (id.IntegerValue >= 0)
            {
                defName += " : " + document.GetElement(id).Name;
            }
            else
            {
               defName += " : " + id.IntegerValue.ToString();
            }
            break;
        case StorageType.Integer:
            if (ParameterType.YesNo == para.Definition.ParameterType)
            {
                if (para.AsInteger() == 0)
                {
                    defName += " : " + "False";
                }
                else
                {
                    defName += " : " + "True";
                }
            }
            else
            {
                defName += " : " + para.AsInteger().ToString();
            }
            break;
        case StorageType.String:
            defName += " : " + para.AsString();
            break;
        default:
            defName = "Unexposed parameter.";
            break;
    }

    return defName;
}
Copy VB.NET
Private Sub GetElementParameterInformation(document As Document, element As Element)
    ' Format the prompt information string
    Dim prompt As [String] = "Show parameters in selected Element:"

    Dim st As New StringBuilder()
    ' iterate element's parameters
    For Each para As Parameter In element.Parameters
        st.AppendLine(GetParameterInformation(para, document))
    Next

    ' Give the user some information
    TaskDialog.Show("Revit", prompt)
End Sub

Private Function GetParameterInformation(para As Parameter, document As Document) As [String]
    Dim defName As String = Convert.ToString(para.Definition.Name) & "\t"
    ' Use different method to get parameter data according to the storage type
    Select Case para.StorageType
        Case StorageType.[Double]
            'covert the number into Metric
            defName += " : " & para.AsValueString()
            Exit Select
        Case StorageType.ElementId
            'find out the name of the element
            Dim id As Autodesk.Revit.DB.ElementId = para.AsElementId()
            If id.IntegerValue >= 0 Then
                defName += " : " + document.GetElement(id).Name
            Else
                defName += " : " & id.IntegerValue.ToString()
            End If
            Exit Select
        Case StorageType.[Integer]
            If ParameterType.YesNo = para.Definition.ParameterType Then
                If para.AsInteger() = 0 Then
                    defName += " : " & "False"
                Else
                    defName += " : " & "True"
                End If
            Else
                defName += " : " & para.AsInteger().ToString()
            End If
            Exit Select
        Case StorageType.[String]
            defName += " : " & para.AsString()
            Exit Select
        Case Else
            defName = "Unexposed parameter."
            Exit Select
    End Select

    Return defName
End Function

See Also