我正在控制事件“application.ControlledApplication.ElementTypeDuplicated”,并且在新类型的名称被估算之后此事件引发,但之后我想覆盖对话框的结果(ID:“IDD_SYMBOL_ATTRIB”)在事件ElementTypeDuplicated之前引发的。我已经尝试获取一个Object Args并覆盖在索取事件ElementTypeDuplicated的方法中的结果,但是不起作用。有没有办法做到这一点?
示例:
public void OnElementTypeDuplicated(object o, ElementTypeDuplicatedEventArgs args)
{
//doing things
duplicatingTypeArgs.OverrideResult(0);
}
}
}
public void OnDialogDuplicatingELement(object o, DialogBoxShowingEventArgs args)
{
if (args.DialogId=="IDD_SYMBOL_ATTRIB")
{
duplicatingTypeArgs = args;
}
}
答案 0 :(得分:0)
Haven尚未对此进行测试,但如何使用" Element.GetChangeTypeElementAddition"来实现IUpdater。而是订阅重复类型事件
答案 1 :(得分:0)
您可以在复制符号之前订阅DocumentChanged
事件。这将为您提供所有新创建元素的元素ID。使用它的一个示例由place family instance sample提供。
复制后,再次取消订阅。
您可以使用Idling
event在复制终止时收到通知。