AutoCAD.net: DoubleClick

Double clicking on most objects in the drawing window displays the Properties palette. This behavior can be changed with the DoubleClickAction and DoubleClickCmd classes. Use this to add behavior to custom objects as well.

To edit the double-click behavior, first attach a MacroId to a DoubleClickCmd object. This defines the action that will be performed. Next, attach a DoubleClickAction to a drawing object using the DxfName() property. Finally attach the action to the command.

 

            string acadCui = (string)Application.GetSystemVariable("MENUNAME") + ".cui"; //Get mainCuiFile

            acadCui = acadCui.ToLower();

            CustomizationSection cs0 = new CustomizationSection(acadCui);

            string customCui = acadCui.Replace("acad.cui", "custom.cui"); //Get partialCui

            CustomizationSection custom = new CustomizationSection(customCui);

 

            DoubleClickAction dblClickAction = new DoubleClickAction(custom.MenuGroup, "My Double click", -1);

            dblClickAction.DxfName = "Polyline";

            DoubleClickCmd dblClickCmd = new DoubleClickCmd(dblClickAction);

            dblClickCmd.MacroID = "MM_1567";

            dblClickAction.DoubleClickCmd = dblClickCmd;

 

            /*dblClickAction is now set to execute the polyline edit macro (MM_1567) when a Polyline is double-clicked.

             * If a double-click action for an object is overridden, the new action takes precedence,

             * and the old action becomes inactive.

             */

原文地址:https://www.cnblogs.com/wf225/p/1277347.html