namespace Yw.WinFrmUI { public partial class EditDivisionDlg : DevExpress.XtraEditors.XtraForm { public EditDivisionDlg() { InitializeComponent(); this.dataLayoutControl1.SetupLayoutControl(); } /// /// 回调事件 /// public event Func> ReloadDataEvent; /// /// 验证识别码是否存在事件 /// public event Func VerifyTagNameExistEvent; private Yw.Vmo.DivisionVmo _model = null; /// /// 绑定 /// public async void SetBindingData(Yw.Vmo.DivisionVmo model) { var list = new List(); _model = model; this.NameTextEdit.EditValue = _model.Name; this.ADCodeTextEdit.EditValue = _model.ADCode; this.TagNameTextEdit.EditValue = _model.TagName; this.DescriptionTextEdit.EditValue = _model.Description; this.TypeImageComboBoxEdit.Properties.AddEnum(typeof(Yw.Model.eDivisionType), false); this.TypeImageComboBoxEdit.EditValue = _model.Type; var allList = await new BLL.Division().GetAll(); if (allList != null) { foreach (var item in allList) { list.Add(new DivisionViewModel(item)); } } treeListLookUpEdit1TreeList.DataSource = list; } //验证 private bool Valid() { this.dxErrorProvider1.ClearErrors(); if (string.IsNullOrEmpty(this.NameTextEdit.Text.Trim())) { this.dxErrorProvider1.SetError(this.NameTextEdit, "必填项"); return false; } var tagName = this.TagNameTextEdit.Text.Trim(); if (!string.IsNullOrEmpty(tagName)) { if (_model.TagName != tagName) { if (VerifyTagNameExistEvent != null) { if (VerifyTagNameExistEvent(tagName, _model.ID)) { this.dxErrorProvider1.SetError(this.TagNameTextEdit, "重复"); return false; } } } } return true; } //确定 private async void btnOk_Click(object sender, EventArgs e) { if (_model == null) return; if (!Valid()) return; _model.Name = this.NameTextEdit.Text.Trim(); _model.Type = (Yw.Model.eDivisionType)this.TypeImageComboBoxEdit.EditValue; _model.ADCode = this.ADCodeTextEdit.Text.Trim(); _model.Description = this.DescriptionTextEdit.Text.Trim(); _model.TagName = this.TagNameTextEdit.Text.Trim(); if (this.ReloadDataEvent == null) return; if (!await this.ReloadDataEvent(_model, this.textEditParents.EditValue)) { MessageBoxHelper.ShowError("更新失败!"); return; } MessageBoxHelper.ShowSuccess("更新成功!"); this.DialogResult = System.Windows.Forms.DialogResult.OK; this.Close(); } } }