namespace PBS.WinFrmUI.Hydro { public partial class QuickModelingPlaceWizardPage : DevExpress.XtraEditors.XtraUserControl, IWizardPageAsync { public QuickModelingPlaceWizardPage() { InitializeComponent(); this.layoutControl1.SetupLayoutControl(); this.mapSetSimpleMarkerContainer1.LoadCompletedEvent += MapSetSimpleMarkerContainer1_LoadCompletedEvent; this.mapSetSimpleMarkerContainer1.SetMarkerEvent += MapSetSimpleMarkerContainer1_SetMarkerEvent; } /// /// 状态改变事件 /// public event Action PageStateChangedEvent; private QuickModelingViewModel _vm = null;//操作对象 private bool _isCompleted = false;//是否创建完成 private bool _createResult = false;//创建结果 /// /// 初始化页面 /// public async void InitialPage(QuickModelingViewModel vm) { if (vm == null) { return; } _vm = vm; _isCompleted = false; _createResult = false; //_createResult = await QuickModelingHelper.Create(vm, (msg, color) => // { // var drawItem = new DrawItemViewModel // { // Text = msg, // Color = color // }; // this.listBoxControl1.Items.Add(drawItem); // }, (max, current) => // { // this.progressBarControl1.Properties.Maximum = max; // this.progressBarControl1.Position = current; // //替代方案 // // this.progressBarControl1.Properties.Step = current; // // this.progressBarControl1.PerformStep(); // }); _isCompleted = true; if (!_createResult) { //this.progressBarControl1.Position = 0; //this.itemForProgress.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; } this.PageStateChangedEvent?.Invoke(); } //加载完成事件 private async void MapSetSimpleMarkerContainer1_LoadCompletedEvent() { if (_vm.Marker != null) { await this.mapSetSimpleMarkerContainer1.LoadMarker(_vm.Marker); } } //设置 private void MapSetSimpleMarkerContainer1_SetMarkerEvent(Yw.Model.Map.Marker obj) { _vm.Marker = obj; if (string.IsNullOrEmpty(this.txtAddress.Text.Trim())) { this.txtAddress.EditValue = obj.Address; } } /// /// 允许上一步 /// public bool AllowPrev { get { if (!_isCompleted) { return false; } if (!_createResult) { return true; } return false; } } /// /// 允许下一步 /// public bool AllowNext { get { if (_createResult) { return true; } return false; } } /// /// 允许取消 /// public bool AllowCancel { get { if (!_createResult) { return true; } return false; } } /// /// 允许完成 /// public bool AllowComplete { get { return false; } } /// /// 能否上一步 /// /// public Task CanPrev() { return Task.Run(() => this.AllowPrev); } /// /// 能否下一步 /// public Task CanNext() { return Task.Run(() => this.AllowNext); } /// /// 能否取消 /// public Task CanCancel() { return Task.Run(() => this.AllowCancel); } /// /// 能否完成 /// public Task CanComplete() { return Task.Run(() => this.AllowComplete); } } }