namespace HStation.WinFrmUI { public partial class GenerateXhsProjectWizardPage : DevExpress.XtraEditors.XtraUserControl, IWizardPage { public GenerateXhsProjectWizardPage() { InitializeComponent(); this.layoutControl1.SetupLayoutControl(); } /// /// 状态改变事件 /// public event Action PageStateChangedEvent; private bool _isInitialize = false;//是否初始化 private bool _importResult = false;//导入结果 private ImportXhsProjectViewModel _vm = null;//操作对象 /// /// /// public async void InitialPage(ImportXhsProjectViewModel vm) { _vm = vm; _isInitialize = false; _importResult = false; _importResult = await ImportXhsProjectHelper.Import(vm, (msg) => { this.listBoxControl1.Items.Add(msg); }, (max, current) => { this.progressBarControl1.Properties.Maximum = max; this.progressBarControl1.Position = current; //替代方案 // this.progressBarControl1.Properties.Step = current; // this.progressBarControl1.PerformStep(); }); if (!_importResult) { this.progressBarControl1.Position = 0; this.itemForProgress.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; } _isInitialize = true; this.PageStateChangedEvent?.Invoke(); } /// /// 允许上一步 /// public bool AllowPrev { get { if (_isInitialize) { if (!_importResult) { return true; } } return false; } } /// /// 允许下一步 /// public bool AllowNext { get { if (_isInitialize) { if (_importResult) { return true; } } return false; } } /// /// 允许取消 /// public bool AllowCancel { get { if (_isInitialize) { if (!_importResult) { return true; } } return false; } } /// /// 允许完成 /// public bool AllowComplete { get { return false; } } /// /// 能否上一步 /// /// public bool CanPrev() { return this.AllowPrev; } /// /// 能否下一步 /// public bool CanNext() { return this.AllowNext; } /// /// 能否取消 /// public bool CanCancel() { return this.AllowCancel; } /// /// 能否完成 /// public bool CanComplete() { return false; } } }