private void OnResetStyles(object sender, EventArgs args) { PoisonStyleManager styleManager = Component as PoisonStyleManager; if (styleManager != null) { if (styleManager.Owner == null) { MessageBox.Show("StyleManager needs the Owner property assigned to before it can reset styles.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } ResetStyles(styleManager, styleManager.Owner as Control); }
private void ResetStyles(PoisonStyleManager styleManager, Control control) { IPoisonForm container = control as IPoisonForm; if (container != null && !ReferenceEquals(styleManager, container.StyleManager)) { return; } if (control is IPoisonControl) { ResetProperty(control, "Style", ColorStyle.Default); ResetProperty(control, "Theme", ThemeStyle.Default); } else if (control is IPoisonComponent) { ResetProperty(control, "Style", ColorStyle.Default); ResetProperty(control, "Theme", ThemeStyle.Default); } if (control.ContextMenuStrip != null) { ResetStyles(styleManager, control.ContextMenuStrip); } TabControl tabControl = control as TabControl; if (tabControl != null) { foreach (TabPage tp in tabControl.TabPages) { ResetStyles(styleManager, tp); } } if (control.Controls != null) { foreach (Control child in control.Controls) { ResetStyles(styleManager, child); } } }