Share

RebarContainerParameterManager.AddSharedParameterAsOverride Method

Adds a shared parameter as one of the parameter overrides stored by this Rebar Container element.


Namespace: Autodesk.Revit.DB.Structure
Assembly: RevitAPI (in RevitAPI.dll) Version: 26.1.0.0 (26.1.0.34)

Syntax

C#

public void AddSharedParameterAsOverride(
	ElementId paramId
)

Parameters

paramId  ElementId
The id of the shared parameter element

Exceptions

ExceptionCondition
ArgumentException paramId is not a valid Element identifier. -or- paramId is not the id of a shared parameter in the current document, or its name was already used by another shared parameter of the element. -or- paramId is already a Rebar Container parameter
ArgumentNullException A non-optional argument was null

Example

C#

// Find the named shared parameter and add it as an override to the parameter manger for the given RebarContainer
void AddSharedParameterOverride(RebarContainer container, string sharedParamName)
{
    // find the shared parameter guid
    FilteredElementCollector collector = new FilteredElementCollector(container.Document);
    collector.OfClass(typeof(SharedParameterElement));
    IEnumerable<SharedParameterElement> paramCollector = collector.Cast<SharedParameterElement>();

    foreach (SharedParameterElement spe in paramCollector)
    {
        if (spe.Name.CompareTo(sharedParamName) == 0)
        {
            RebarContainerParameterManager paramManager = container.GetParametersManager();
            paramManager.AddSharedParameterAsOverride(spe.Id);
            break;
        }
    }
}

VB

' Find the named shared parameter and add it as an override to the parameter manger for the given RebarContainer
Private Sub AddSharedParameterOverride(container As RebarContainer, sharedParamName As String)
    ' find the shared parameter guid
    Dim collector As New FilteredElementCollector(container.Document)
    collector.OfClass(GetType(SharedParameterElement))
    Dim paramCollector As IEnumerable(Of SharedParameterElement) = collector.Cast(Of SharedParameterElement)()

    For Each spe As SharedParameterElement In paramCollector
        If spe.Name.CompareTo(sharedParamName) = 0 Then
            Dim paramManager As RebarContainerParameterManager = container.GetParametersManager()
            paramManager.AddSharedParameterAsOverride(spe.Id)
            Exit For
        End If
    Next
End Sub

See Also

Reference

Was this information helpful?