namespace Yw.WinFrmUI { public partial class SetHydroWaterboxDlg : DevExpress.XtraEditors.XtraForm { public SetHydroWaterboxDlg() { InitializeComponent(); this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; this.layoutControl1.SetupLayoutControl(); } /// /// 返回数据事件 /// public event Action> ReloadDataEvent; //所有部件列表 private List _allVisualList = null; /// /// 绑定数据 /// public void SetBindingData(Yw.Model.HydroWaterboxInfo visual) { var allVisualList = visual == null ? null : new List() { visual }; SetBindingData(allVisualList); } /// /// 绑定数据 /// public void SetBindingData(List allVisualList) { _allVisualList = allVisualList; if (_allVisualList != null && _allVisualList.Count == 1) { var visual = _allVisualList.First(); this.txtPoolElev.EditValue = Math.Round(visual.PoolElev, 4); this.txtInitLevel.EditValue = Math.Round(visual.InitLevel, 4); this.txtMinLevel.EditValue = Math.Round(visual.MinLevel, 4); this.txtMaxLevel.EditValue = Math.Round(visual.MaxLevel, 4); this.txtDN.EditValue = Math.Round(visual.DN, 4); this.ckOverFlow.Checked = visual.OverFlow; } } //验证 private bool Valid() { this.dxErrorProvider1.ClearErrors(); if (this.txtPoolElev.EditValue == null) { this.dxErrorProvider1.SetError(this.txtPoolElev, "必填项"); return false; } if (this.txtInitLevel.EditValue == null) { this.dxErrorProvider1.SetError(this.txtInitLevel, "必填项"); return false; } if (this.txtMinLevel.EditValue == null) { this.dxErrorProvider1.SetError(this.txtMinLevel, "必填项"); return false; } if (this.txtMaxLevel.EditValue == null) { this.dxErrorProvider1.SetError(this.txtMaxLevel, "必填项"); return false; } if (this.txtDN.EditValue == null) { this.dxErrorProvider1.SetError(this.txtDN, "必填项"); return false; } return true; } // private void btnOk_Click(object sender, EventArgs e) { if (_allVisualList == null || _allVisualList.Count < 1) { return; } if (!Valid()) { return; } var poolElev = double.Parse(this.txtPoolElev.EditValue.ToString()); var initLevel = double.Parse(this.txtInitLevel.EditValue.ToString()); var minLevel = double.Parse(this.txtMinLevel.EditValue.ToString()); var maxLevel = double.Parse(this.txtMaxLevel.EditValue.ToString()); var dn = double.Parse(this.txtDN.EditValue.ToString()); var overFlow = this.ckOverFlow.Checked; _allVisualList.ForEach(x => { x.PoolElev = poolElev; x.InitLevel = initLevel; x.MinLevel = minLevel; x.MaxLevel = maxLevel; x.DN = dn; x.OverFlow = overFlow; }); this.ReloadDataEvent?.Invoke(_allVisualList); this.DialogResult = DialogResult.OK; this.Close(); } } }