using DevExpress.XtraLayout.Utils; namespace HStation.WinFrmUI { public partial class ImportXhsProjectDlg : DevExpress.XtraEditors.XtraForm { public ImportXhsProjectDlg() { InitializeComponent(); this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; } private ImportXhsProjectViewModel _vm = null; private ImportXhsProjectManager _wizard; /// /// /// public ImportXhsProjectViewModel ViewModel { get { return _vm; } } /// /// 绑定数据 /// public void SetBindingData() { _vm = new ImportXhsProjectViewModel(); _wizard = new ImportXhsProjectManager(_vm); _wizard.SelectedPageChangedEvent += _wizard_SelectedPageChangedEvent; _wizard.SelectedPageStateChangedEvent += _wizard_SelectedPageStateChangedEvent; ; _wizard.InitialManager(new IWizardPage[] { this.inputXhsProjectInfoWizardPage, this.setXhsProjectMapLocationWizardPage, this.generateXhsProjectWizardPage, this.projectResultShowPanel1 }); } /// /// 绑定数据 /// public void SetBindingData(XhsProjectExtensionsVmo project, Yw.Vmo.MapInfoVmo mapInfo, Yw.Vmo.BimfaceFileVmo bimfaceFile) { _vm = new ImportXhsProjectViewModel(project, mapInfo, bimfaceFile); _wizard = new ImportXhsProjectManager(_vm); _wizard.SelectedPageChangedEvent += _wizard_SelectedPageChangedEvent; _wizard.SelectedPageStateChangedEvent += _wizard_SelectedPageStateChangedEvent; ; _wizard.InitialManager(new IWizardPage[] { this.inputXhsProjectInfoWizardPage, this.setXhsProjectMapLocationWizardPage, this.generateXhsProjectWizardPage, this.projectResultShowPanel1 }); } //选择页面改变 private void _wizard_SelectedPageChangedEvent(IWizardPage page, int index) { this.itemForPrev.Visibility = page.AllowPrev ? LayoutVisibility.Always : LayoutVisibility.Never; this.itemForNext.Visibility = page.AllowNext ? LayoutVisibility.Always : LayoutVisibility.Never; this.itemForCancel.Visibility = page.AllowCancel ? LayoutVisibility.Always : LayoutVisibility.Never; this.itemForComplete.Visibility = page.AllowComplete ? LayoutVisibility.Always : LayoutVisibility.Never; this.navigationFrame1.SelectedPageIndex = index; this.stepProgressBar1.SelectedItemIndex = index; } //选择页面状态改变 private void _wizard_SelectedPageStateChangedEvent(IWizardPage page, int index) { this.itemForPrev.Visibility = page.AllowPrev ? LayoutVisibility.Always : LayoutVisibility.Never; this.itemForNext.Visibility = page.AllowNext ? LayoutVisibility.Always : LayoutVisibility.Never; this.itemForCancel.Visibility = page.AllowCancel ? LayoutVisibility.Always : LayoutVisibility.Never; this.itemForComplete.Visibility = page.AllowComplete ? LayoutVisibility.Always : LayoutVisibility.Never; } //上一步 private void btnPrev_Click(object sender, EventArgs e) { if (_wizard != null) { _wizard.Prev(); } } //下一步 private void btnNext_Click(object sender, EventArgs e) { if (_wizard != null) { _wizard.Next(); } } //取消 private void btnCancel_Click(object sender, EventArgs e) { if (_wizard != null) { var bol = _wizard.Cancel(); if (bol) { this.DialogResult = DialogResult.Cancel; this.Close(); } } } //完成 private void btnComplete_Click(object sender, EventArgs e) { if (_wizard != null) { var bol = _wizard.Complete(); if (bol) { this.DialogResult = DialogResult.OK; this.Close(); } } } //正在关闭 private void ImportXhsProjectDlg_FormClosing(object sender, FormClosingEventArgs e) { if (_wizard != null) { if (this.DialogResult == DialogResult.OK) { /* if (!_wizard.Complete()) { e.Cancel = true; }*/ } else if (this.DialogResult == DialogResult.Cancel) { if (!_wizard.Cancel()) { e.Cancel = true; } } else { e.Cancel = true; } } } } }