[Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.TransactionMode.Manual)] public class MyCommand : IExternalCommand { public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { // 1. Get the Document UIApplication uiApp = commandData.Application; Document doc = uiApp.ActiveUIDocument.Document; // 2. Start a Transaction using (Transaction trans = new Transaction(doc, "My Customization")) { trans.Start(); // Your logic goes here (e.g., changing a parameter) trans.Commit(); } return Result.Succeeded; } } Use code with caution. Copied to clipboard 📝 Manifest Files (.addin)
💡 : Use RevitLookup . It is an open-source tool that lets you "peek" under the hood of Revit elements to see their API properties in real-time. Instant Autodesk Revit 2013 Customization with ...
(Includes the crucial RevitAPI.dll and RevitAPIUI.dll ). [Autodesk
: Use uiApp.ActiveUIDocument.Selection to interact with what the user clicks. Copied to clipboard 📝 Manifest Files (
Every external command needs a specific structure. Use this template: