using DevExpress.XtraEditors;
using DevExpress.XtraLayout.Utils;
namespace HStation.WinFrmUI
{
public partial class ImportXhsProjectFileDlg : DevExpress.XtraEditors.XtraForm
{
public ImportXhsProjectFileDlg()
{
InitializeComponent();
}
private readonly ImportXhsProjectFileViewModel _vm = new();
private ImportXhsProjectFileManager _wizard;
private static bool IsAddItem = true;
///
///
///
public ImportXhsProjectFileViewModel ViewModel
{
get { return _vm; }
}
///
///
///
public void SetBindingData(long PrjID)
{
_vm.ProjectID = PrjID;
_wizard = new ImportXhsProjectFileManager(_vm);
_wizard.SelectedPageChangedEvent += _wizard_SelectedPageChangedEvent;
_wizard.SelectedPageStateChangedEvent += _wizard_SelectedPageStateChangedEvent; ;
_wizard.InitialManager(new IWizardPage[] {
selectXhsProjectModelFileWizardPage1,
generateXhsProjectFileWizardPage1,
importXhsProjectFileCompletedCtrl1,
});
}
//选择页面改变
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;
}
}
}
}
}