duheng
2024-07-23 3fec42c6383aa3b8d65f744a93b8a918d7cc6e02
WinFrmUI/Yw.WinFrmUI.Core/08-wizard/WizardManager.cs
@@ -38,13 +38,13 @@
                    {
                        if (page == this.SelectedPage)
                        {
                            this.SelectedPageStateChangedEvent?.Invoke(this.SelectedPage, this.SelectedIndex);
                            TriggerSelectedPageStateChangedEvent();
                        }
                    };
                }
                _selectedIndex = 0;
                this.SelectedPageChangedEvent?.Invoke(this.SelectedPage, this.SelectedIndex);
                this.SelectedPage.InitialPage(_vm);
                TriggerSelectedPageChangedEvent();
            }
            else
            {
@@ -65,7 +65,7 @@
        /// <summary>
        /// vm对象
        /// </summary>
        protected readonly T _vm = new T();
        protected readonly T _vm = new();
        #endregion
@@ -93,6 +93,7 @@
        {
            get { return _selectedIndex; }
        }
        /// <summary>
        /// 选择索引
        /// </summary>
@@ -118,8 +119,8 @@
            if (this.SelectedPage.CanPrev())
            {
                --_selectedIndex;
                this.SelectedPageChangedEvent?.Invoke(this.SelectedPage, this.SelectedIndex);
                this.SelectedPage.InitialPage(_vm);
                TriggerSelectedPageChangedEvent();
                return true;
            }
            return false;
@@ -141,8 +142,8 @@
            if (this.SelectedPage.CanNext())
            {
                ++_selectedIndex;
                this.SelectedPageChangedEvent?.Invoke(this.SelectedPage, this.SelectedIndex);
                this.SelectedPage.InitialPage(_vm);
                TriggerSelectedPageChangedEvent();
                return true;
            }
            return false;
@@ -190,6 +191,26 @@
        #endregion
        #region 方法
        /// <summary>
        /// 触发选择页面改变事件
        /// </summary>
        protected void TriggerSelectedPageChangedEvent()
        {
            this.SelectedPageChangedEvent?.Invoke(this.SelectedPage, this.SelectedIndex);
        }
        /// <summary>
        /// 触发选择页面状态改变事件
        /// </summary>
        protected void TriggerSelectedPageStateChangedEvent()
        {
            this.SelectedPageStateChangedEvent?.Invoke(this.SelectedPage, this.SelectedIndex);
        }
        #endregion
    }
}