public void Insert(int index, WizardPageBase value)
            {
                value.WizardPageParent = m_parent;
                InnerList.Insert(index, value);

                if (value.Index < 0)
                {
                    value.Index = index;
                }

                RaiseChanged(value);
            }
            public int Add(WizardPageBase value)
            {
                if (Contains(value) == true)
                {
                    return(IndexOf(value));
                }

                value.WizardPageParent = m_parent;
                int index = InnerList.Add(value);

                if (value.Index < 0)
                {
                    value.Index = index;
                }

                RaiseChanged(value);

                return(index);
            }
        /// <summary>
        /// Event Handler which raised on Pages Collection changes
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected virtual void PagesCollectionChanged(object sender, EventArgs e)
        {
            if (m_pages.Count > 0)
            {
                if (sender is WizardPageBase)
                {
                    WizardPageBase page = ( WizardPageBase )sender;

                    // remove old handlers
                    page.ControlAdded   -= new ControlEventHandler(AttachControlEvents);
                    page.ControlRemoved -= new ControlEventHandler(DetachControlEvents);

                    // add them again
                    page.ControlAdded   += new ControlEventHandler(AttachControlEvents);
                    page.ControlRemoved += new ControlEventHandler(DetachControlEvents);
                }

                m_iLastShown = -1;
                ShowWizardPage();
            }
        }
 public void Remove(WizardPageBase value)
 {
     InnerList.Remove(value);
     RaiseChanged();
 }
 public int IndexOf(WizardPageBase value)
 {
     return(InnerList.IndexOf(value));
 }
 public bool Contains(WizardPageBase value)
 {
     return(InnerList.Contains(value));
 }