Structural |
Modifies StructuralConnectionHandlerType of input StructuralConnectionHandler by adding representors of input elements or subelements.
Namespace: Autodesk.Revit.DB.Structure
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)

public static void AddElementsToCustomConnection(
StructuralConnectionHandler structuralConnectionHandler,
IList<Reference> references
)
Parameters
- structuralConnectionHandler StructuralConnectionHandler
- The existing StructuralConnectionHandler having custom StructuralConnectionHandlerType which is about to be modified.
- references IList Reference
- References to elements or subelements which are to be used to modify custom StructuralConnectionHandlerType by adding their representors.

Exception | Condition |
---|---|
ArgumentException | Input StructuralConnectionHandler must have custom type. -or- All the input Elements should be of the following structural categories: framings, columns, profiles, plates, bolts, anchors, shear studs, welds or structural connections. -or- Total number of different input elements of input StructuralConnectionHandlers must be lower or equal to 3. |
ArgumentNullException | A non-optional argument was null |

Elements or subelements added to a custom connection are deleted and transformed in subelements of the connection. They could be:
- FamilyInstance (structural beams and columns).
- StructuralConnectionHandler elements associated to the connection.
- Specific steel connection elements (bolts, anchors, plates, etc). These connection elements will be of type element but with categories related to structural connections, for example:
- OST_StructConnectionWelds
- OST_StructConnectionHoles
- OST_StructConnectionModifiers
- OST_StructConnectionShearStuds
- OST_StructConnectionBolts
- OST_StructConnectionAnchors
- OST_StructConnectionPlates

C#
// Select elements to add to connection.
IList<Reference> refs = Utilities.Functions.SelectConnectionElementsCustom(activeDoc);
if (refs.Count() <= 0)
{
return Result.Failed;
}
// Start transaction
trans.Start();
// Adding the elements to the custom connection, using Revit's StructuralConnectionHandlerType class
StructuralConnectionHandlerType.AddElementsToCustomConnection(conn, refs);
// Commit the transaction
ts = trans.Commit();
if (ts != TransactionStatus.Committed)
{
message = "Failed to commit the current transaction !";
trans.RollBack();
return Result.Failed;
}
}
