public ExternalEventExampleDialog(ExternalEvent exEvent, ExternalEventExample handler) { InitializeComponent(); m_ExEvent = exEvent; m_Handler = handler; }
protected override void OnFormClosed(FormClosedEventArgs e) { // 保存的实例需要释放 m_ExEvent.Dispose(); m_ExEvent = null; m_Handler = null; base.OnFormClosed(e); }
// 外部命令调用此方法 public void ShowForm(UIApplication uiapp) { // 如果没有创建对话框,创建并显示它 if (m_MyForm == null || m_MyForm.IsDisposed) { // 新建一个外部事件响应实例 ExternalEventExample handler = new ExternalEventExample(); // 新建一个外部事件实例 ExternalEvent exEvent = ExternalEvent.Create(handler); // 把上面两个实例传给对话框. m_MyForm = new ExternalEventExampleDialog(exEvent, handler); m_MyForm.Show(); } }