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);
        }
Beispiel #2
0
        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);
                }
            }
        }