using HStation.Dto; using HStation.WinFrmUI.Xhs.Project; using ISupply.WinFrmUI; namespace HStation.WinFrmUI { public partial class XhsProjectListPage : DocumentPage { public XhsProjectListPage() { InitializeComponent(); this.PageTitle.Caption = "项目管理"; this.gridView1.SetNormalView(); this.gridView1.RegistCustomDrawRowIndicator(); } /// /// 初始化数据 /// public override void InitialDataSource() { SetBindingData(); } private new BLL.XhsProject _bll = new BLL.XhsProject(); private List _allBindingList = new List(); private async void SetBindingData() { var alllist = await _bll.GetAll(); if (alllist != null) { foreach (var item in alllist) { _allBindingList.Add(new ProjectViewModel(item)); } } this.projectViewModelBindingSource.DataSource = _allBindingList; this.projectViewModelBindingSource.ResetBindings(false); } //添加 private async void BtnAdd_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { var dlg = new AddProjectDlg(); dlg.ReloadEvent += async (rhs) => { var id = await _bll.Insert(rhs); if (id > 0) { var vmmodel = await _bll.GetByID(id); _allBindingList.Add(new ProjectViewModel(vmmodel)); this.projectViewModelBindingSource.ResetBindings(false); return true; } return false; }; dlg.ShowDialog(); } //修改 private async void BtnEdit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { var vm = this.gridView1.GetCurrentViewModel(_allBindingList); if (vm == null) { MessageBoxHelper.ShowError("请选择数据行!"); return; } var dlg = new EditProjectDlg(); dlg.SetBindingData(vm); dlg.ReloadEvent += async (rhs) => { if (await _bll.Update(rhs)) { return true; } return false; }; dlg.ShowDialog(); } //删除 private async void BtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { var vm = this.gridView1.GetCurrentViewModel(_allBindingList); if (vm == null) { MessageBoxHelper.ShowError("请选择数据行!"); return; } if (MessageBoxHelper.IsClickOk($"确认删除数据行?", "提示", MessageBoxButtons.OKCancel)) return; var result = await _bll.DeleteByID(vm.ID); if (!result) { MessageBoxHelper.ShowError($"删除失败!", "警告"); return; } MessageBoxHelper.ShowSuccess($"删除成功!"); _allBindingList.Remove(vm); this.projectViewModelBindingSource.ResetBindings(false); } } }