namespace Yw.WinFrmUI { public partial class SetHydroWaterboxDlg : DevExpress.XtraEditors.XtraForm { public SetHydroWaterboxDlg() { InitializeComponent(); this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; this.layoutControl1.SetupLayoutControl(); this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent; } /// /// 返回数据事件 /// public event Action> ReloadDataEvent; private List _allVisualList = null;//所有部件列表 private HydroChangeHelper _changeHelper = null;//改变辅助类 private HydroPropStatusHelper _propStatusHelper = null;//属性状态辅助类 /// /// 绑定数据 /// public void SetBindingData ( Yw.Model.HydroWaterboxInfo visual, HydroChangeHelper changeHelper = null, HydroPropStatusHelper propStatusHelper = null ) { var allVisualList = visual == null ? null : new List() { visual }; SetBindingData(allVisualList, changeHelper, propStatusHelper); } /// /// 绑定数据 /// public void SetBindingData ( List allVisualList, HydroChangeHelper changeHelper = null, HydroPropStatusHelper propStatusHelper = null ) { _allVisualList = allVisualList; _changeHelper = changeHelper; _propStatusHelper = propStatusHelper; if (_allVisualList != null && _allVisualList.Count == 1) { var visual = _allVisualList.First(); this.txtBeginGroup.EditValue = visual.BeginGroup; 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.txtMinVol.EditValue = Math.Round(visual.MinVol, 2); } } //确定 private void GeneralOkAndCancelCtrl1_OkEvent() { if (_allVisualList == null || _allVisualList.Count < 1) { return; } var beginGroup = this.txtBeginGroup.Text.Trim(); double? initLevel = this.txtInitLevel.EditValue == null ? null : double.Parse(this.txtInitLevel.EditValue.ToString()); double? minLevel = this.txtMinLevel.EditValue == null ? null : double.Parse(this.txtMinLevel.EditValue.ToString()); double? maxLevel = this.txtMaxLevel.EditValue == null ? null : double.Parse(this.txtMaxLevel.EditValue.ToString()); double? dn = this.txtDN.EditValue == null ? null : double.Parse(this.txtDN.EditValue.ToString()); double? minVol = this.txtMinVol.EditValue == null ? null : double.Parse(this.txtMinVol.EditValue.ToString()); _allVisualList.ForEach(x => { if (!string.IsNullOrEmpty(beginGroup)) { if (x.BeginGroup != beginGroup) { _changeHelper.Append(x, eChangeType.Update); _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.BeginGroup), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改"); } x.BeginGroup = beginGroup; } if (initLevel.HasValue) { if (x.InitLevel != initLevel.Value) { _changeHelper.Append(x, eChangeType.Update); _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.InitLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改"); } x.InitLevel = initLevel.Value; } if (minLevel.HasValue) { if (x.MinLevel != minLevel.Value) { _changeHelper.Append(x, eChangeType.Update); _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MinLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改"); } x.MinLevel = minLevel.Value; } if (maxLevel.HasValue) { if (x.MaxLevel != maxLevel.Value) { _changeHelper.Append(x, eChangeType.Update); _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MaxLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改"); } x.MaxLevel = maxLevel.Value; } if (dn.HasValue) { if (x.DN != dn.Value) { _changeHelper.Append(x, eChangeType.Update); _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.DN), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改"); } x.DN = dn.Value; } if (minVol.HasValue) { if (x.MinVol != minVol.Value) { _changeHelper.Append(x, eChangeType.Update); _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MinVol), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改"); } x.MinVol = minVol.Value; } }); this.ReloadDataEvent?.Invoke(_allVisualList); this.DialogResult = DialogResult.OK; this.Close(); } } }