using DevExpress.DocumentServices.ServiceModel.DataContracts; using DevExpress.XtraEditors; using System; using System.Windows.Forms; using Yw.WinFrmUI; using static HStation.WinFrmUI.MenuViewModel; namespace HStation.WinFrmUI { /// /// 添加菜单 /// public partial class AddMenuDlg : DevExpress.XtraEditors.XtraForm { public AddMenuDlg() { InitializeComponent(); } public event Func> ReloadDataEvent; private Yw.Vmo.ProjectMenuVmo _model = null; /// /// 添加 /// public async void SetBindingData(long parentId) { var allList = await new Yw.BLL.ProjectMenu().GetByProjectID(GlobalParas._GlobalParas.ProjectID); this.treeListLookUpEdit1TreeList.DataSource = allList; this.imageComboBoxMenuType.Properties.AddEnum(typeof(eMenuType)); this.imageComboBoxMenuType.SelectedIndex = 0; this.ComboBoxEditParentsChoice.EditValue = parentId; } //验证 private bool Valid() { this.dxErrorProvider1.ClearErrors(); if (string.IsNullOrEmpty(this.NameTextEdit.Text.Trim())) { this.dxErrorProvider1.SetError(this.NameTextEdit, "必填项"); return false; } if (string.IsNullOrEmpty(this.TxtEditPermission.Text.Trim())) { this.dxErrorProvider1.SetError(this.TxtEditPermission, "必填项"); return false; } return true; } //确定 private async void btnOk_Click(object sender, EventArgs e) { if (!Valid()) return; var AddProject = new Yw.Vmo.AddProjectMenuExVmo(); AddProject.Name = this.NameTextEdit.Text.Trim(); AddProject.Description = this.DescriptionMemoEdit.Text.Trim(); AddProject.ParentID = this.ComboBoxEditParentsChoice.EditValue == null ? 0 : Convert.ToInt64(this.ComboBoxEditParentsChoice.EditValue); AddProject.Type = (int)(eMenuType)this.imageComboBoxMenuType.EditValue; AddProject.Permission = this.TxtEditPermission.Text.Trim(); AddProject.ProjectID = GlobalParas._GlobalParas.ProjectID; AddProject.SoftwareIds = new List { GlobalParas._GlobalParas.SoftwareID }; if (await this.ReloadDataEvent.Invoke(AddProject)) { TipFormHelper.ShowSucceed("添加成功!!"); } else { MessageBoxHelper.ShowError("添加失败!"); } this.DialogResult = DialogResult.OK; this.Close(); } private void simpleLabelDelete_Click(object sender, EventArgs e) { this.ComboBoxEditParentsChoice.EditValue = null; } } }