public static void SetMenuState(this IChildMdiForm menuWindow) { if (menuWindow == null) { return; } IList <IButton> tsbs = menuWindow.GetCustomProperty(s_windowMenuButtonName) as IList <IButton>; if (tsbs != null) { IControlManagerContainer cmContainer = menuWindow as IControlManagerContainer; if (cmContainer != null) { if (cmContainer != null && cmContainer.ControlManager != null) { foreach (IButton tsb in tsbs) { SetTsbState(tsb, cmContainer.ControlManager); } } } else { IDisplayManagerContainer dmContainer = menuWindow as IDisplayManagerContainer; if (dmContainer != null && dmContainer.DisplayManager != null) { foreach (IButton tsb in tsbs) { SetTsbState(tsb, dmContainer.DisplayManager); } } } } }
public static void DisposeWindowMenu(this IChildMdiForm menuWindow) { IList <IButton> tsbs = menuWindow.GetCustomProperty(s_windowMenuButtonName) as IList <IButton>; if (tsbs != null) { foreach (IButton tsb in tsbs) { tsb.Click -= new EventHandler(tsb_Click); } tsbs.Clear(); } ToolStrip toolStrip = menuWindow.GetCustomProperty("WindowMenuGeneratedToolStrip") as ToolStrip; if (toolStrip != null) { menuWindow.RevertMergeToolStrip(toolStrip); } IControlManagerContainer cmContainer = menuWindow as IControlManagerContainer; if (cmContainer != null && cmContainer.ControlManager != null) { cmContainer.ControlManager.DisplayManager.PositionChanged -= new EventHandler(cmContainer.ControlManager_PositionChanged); cmContainer.ControlManager.EditEnded -= new EventHandler(cmContainer.ControlManager_EditEnded); cmContainer.ControlManager.StateChanged -= new EventHandler(cmContainer.ControlManager_StateChanged); } else { IDisplayManagerContainer dmContainer = menuWindow as IDisplayManagerContainer; if (dmContainer != null && dmContainer.DisplayManager != null) { dmContainer.DisplayManager.PositionChanged -= new EventHandler(dmContainer.DisplayManager_PositionChanged); } } }