Duplicates the material
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.3.0.0 (25.3.0.0)
Syntax
C#
public Material Duplicate( string name )
Parameters
- name String
- Name of the new material - this name must be correctly structured for Revit use and not duplicate the name of another material in the document.
Return Value
MaterialThe new material.
Exceptions
Exception | Condition |
---|---|
ArgumentException | name cannot include prohibited characters, such as "{, }, [, ], |, ;, less-than sign, greater-than sign, ?, `, ~". -or- The given value for name is already in use as a material element name. |
ArgumentNullException | A non-optional argument was null |
Remarks
If duplication fails for reasons unrelated to the name, null will be returned.Example
C#
private bool DuplicateMaterial(Material material) { bool duplicated = false; //try to duplicate a new instance of Material class using duplicate method //make sure the name of new material is unique in MaterailSet string newName = "new" + material.Name; Material myMaterial = material.Duplicate(newName); if (null == myMaterial) { TaskDialog.Show("Revit", "Failed to duplicate a material!"); } else { duplicated = true; } return duplicated; }
VB
Private Function DuplicateMaterial(material As Material) As Boolean Dim duplicated As Boolean = False 'try to duplicate a new instance of Material class using duplicate method 'make sure the name of new material is unique in MaterailSet Dim newName As String = "new" & Convert.ToString(material.Name) Dim myMaterial As Material = material.Duplicate(newName) If myMaterial Is Nothing Then TaskDialog.Show("Revit", "Failed to duplicate a material!") Else duplicated = True End If Return duplicated End Function