using System.Data; namespace Yw.WinFrmUI { public partial class HydroPumpListExtendGridCtrl : DevExpress.XtraEditors.XtraUserControl { public HydroPumpListExtendGridCtrl() { InitializeComponent(); this.gridView1.SetNormalEditView(); } /// /// 状态改变事件 /// public event Action> StateChangedEvent; private BindingList _allBindingList = null;//绑定列表 /// /// /// public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo) { SetBindingData(hydroInfo?.Pumps, hydroInfo); } /// /// /// public void SetBindingData(List allPumpList, Yw.Model.HydroModelInfo hydroInfo) { var list = allPumpList?.Select(x => new HydroPumpListItemExtendViewModel(x, allPumpList, hydroInfo)).ToList(); SetBindingData(list); } /// /// /// public void SetBindingData(List allList) { _allBindingList = new BindingList(); allList?.ForEach(x => _allBindingList.Add(x)); this.hydroPumpListItemExtendViewModelBindingSource.DataSource = _allBindingList; this.hydroPumpListItemExtendViewModelBindingSource.ResetBindings(false); } /// /// 获取状态列表 /// public List GetStateList() { return _allBindingList?.ToList(); } //值改变事件 private void gridView1_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e) { this.StateChangedEvent?.Invoke(_allBindingList?.ToList()); } } }