private void OpenForm_Close(OpenFormRegion form) { try { OpenFormRegions.Remove(form); OnFormRegionClose(form); IDisposable disposable = form as IDisposable; if (null != disposable) { disposable.Dispose(); } } catch (NetRuntimeSystem.Exception exception) { OnOutlookError(OutlookErrorMethodKind.CloseOpenFormRegion, exception); } }
public virtual void BeforeFormRegionShow(object formRegion) { try { FormRegion form = COMObject.Create <Outlook.FormRegion>(Factory, formRegion); OpenFormRegion openForm = OnCreateOpenFormRegion(form); if (null == openForm) { openForm = new OpenFormRegion(form); } openForm.Close += OpenForm_Close; OpenFormRegions.Add(openForm); OnFormRegionOpen(openForm); } catch (NetRuntimeSystem.Exception exception) { OnOutlookError(OutlookErrorMethodKind.BeforeFormRegionShow, exception); } }
/// <summary> /// Raise the FormRegionClose event /// </summary> /// <param name="form"></param> protected virtual void OnFormRegionClose(OpenFormRegion form) { FormRegionClose?.Invoke(form); }
/// <summary> /// Creates an new instance of OpenFormRegion /// </summary> /// <param name="form">underlying form region</param> /// <returns>new instance of OpenFormRegion</returns> protected virtual OpenFormRegion OnCreateOpenFormRegion(FormRegion form) { OpenFormRegion openForm = new OpenFormRegion(form); return(openForm); }
/// <summary> /// Raise the FormRegionOpen event /// </summary> /// <param name="form"></param> protected virtual void OnFormRegionOpen(OpenFormRegion form) { FormRegionOpen?.Invoke(form); }