public ICollection<ElementId> Delete( ElementId elementId )
| Exception | Condition |
|---|---|
| ArgumentException | The element elementId does not exist in the document -or- ElementId cannot be deleted. |
| ArgumentNullException | A non-optional argument was null |
| ModificationForbiddenException | The document is in failure mode: an operation has failed, and Revit requires the user to either cancel the operation or fix the problem (usually by deleting certain elements). -or- The document is being loaded, or is in the midst of another sensitive process. |
| ModificationOutsideTransactionException | The document has no open transaction. |
Note: in a family document, the predefined elements (those elements inherited from its family template file) can't be deleted by this method.
private void DeleteElement(Autodesk.Revit.DB.Document document, Element element) { // Delete a selected element. ICollection<Autodesk.Revit.DB.ElementId> deletedIdSet = document.Delete(element.Id); if (0 == deletedIdSet.Count) { throw new Exception("Deleting the selected element in Revit failed."); } String prompt = "The selected element has been removed and "; prompt += deletedIdSet.Count - 1; prompt += " more dependent elements have also been removed."; // Give the user some information TaskDialog.Show("Revit",prompt); }
Private Sub DeleteElement(document As Autodesk.Revit.DB.Document, element As Element) ' Delete a selected element. Dim deletedIdSet As ICollection(Of Autodesk.Revit.DB.ElementId) = document.Delete(element.Id) If 0 = deletedIdSet.Count Then Throw New Exception("Deleting the selected element in Revit failed.") End If Dim prompt As [String] = "The selected element has been removed and " prompt += deletedIdSet.Count - 1 prompt += " more dependent elements have also been removed." ' Give the user some information TaskDialog.Show("Revit", prompt) End Sub
private void DeleteElement(Autodesk.Revit.DB.Document document, Element element) { // Delete an element via its id Autodesk.Revit.DB.ElementId elementId = element.Id; ICollection<Autodesk.Revit.DB.ElementId> deletedIdSet = document.Delete(elementId); if (0 == deletedIdSet.Count) { throw new Exception("Deleting the selected element in Revit failed."); } String prompt = "The selected element has been removed and "; prompt += deletedIdSet.Count - 1; prompt += " more dependent elements have also been removed."; // Give the user some information TaskDialog.Show("Revit", prompt); }
Private Sub DeleteElement(document As Autodesk.Revit.DB.Document, element As Element) ' Delete an element via its id Dim elementId As Autodesk.Revit.DB.ElementId = element.Id Dim deletedIdSet As ICollection(Of Autodesk.Revit.DB.ElementId) = document.Delete(elementId) If 0 = deletedIdSet.Count Then Throw New Exception("Deleting the selected element in Revit failed.") End If Dim prompt As [String] = "The selected element has been removed and " prompt += deletedIdSet.Count - 1 prompt += " more dependent elements have also been removed." ' Give the user some information TaskDialog.Show("Revit", prompt) End Sub