/// <summary>
        /// Changes the currently active band to a given band
        /// </summary>
        /// <param name="band">The band to activate</param>
        public void SetActiveBand(NaviBand newBand)
        {
            NaviBandEventArgs e = new NaviBandEventArgs(newBand);

            OnActiveBandChanging(e);
            if (!e.Canceled)
            {
                if (activeBand != newBand)
                {
                    foreach (NaviBand band in bands)
                    {
                        if ((band != newBand) && (band.Button != null))
                        {
                            band.Button.Active = false;
                        }
                    }
                }
                if ((newBand != null) && (newBand.Button != null))
                {
                    newBand.Button.Active = true;
                }

                activeBand = newBand;
                OnActiveBandChanged(new EventArgs());
                PerformLayout();
                Invalidate();
            }
        }
            /// <summary>
            /// Overloaded. Adds a new control to the collection
            /// </summary>
            /// <param name="value">The control to add</param>
            public override void Add(System.Windows.Forms.Control value)
            {
                Owner.SuspendLayout();

                base.Add(value);

                if (value is NaviBand)
                {
                    NaviBand newBand = value as NaviBand;

                    if (!ownerBar.bands.Contains(newBand))
                    {
                        ownerBar.Bands.AddInternal(newBand);
                    }

                    newBand.OwnerBar          = ownerBar;
                    ownerBar.BandInitRequired = true;
                }

                Owner.ResumeLayout();
            }