private void tsDelete_Click(object sender, EventArgs e) { //删除确认 IList <VcEffect> Effects = new List <VcEffect>(); foreach (BaseEntity ety in MainGrdBind.SelectedObjects) { ExIList.Append <VcEffect>(this.grpMbrBF.EffectOfDelete(ety), Effects); } if (!ConfirmEffectFm.Confirm(Effects)) { return; } //删除 MainGrd.SelectionChanged -= MainGrd_SelectionChanged; try { IList <BaseEntity> SelectObjects = MainGrdBind.SelectedObjects; foreach (BaseEntity ety in SelectObjects) { MainBF.Delete(ety); } MainGrdBind.Remove(SelectObjects); } finally { MainGrd.SelectionChanged += MainGrd_SelectionChanged; } //界面更新 //if (MainGrd.RowCount == 0) //删没了后不会触发SelectionChanged MainGrd_SelectionChanged(sender, e); }
private void btnAttachRemove_Click(object sender, EventArgs e) { //数据准备 BaseEntity MainEty = MainGrdBind.Current as BaseEntity; //删除确认 IList <VcEffect> Effects = new List <VcEffect>(); foreach (BaseEntity ety in AttachGrdBind.SelectedObjects) { ExIList.Append <VcEffect>(this.grpMbrBF.EffectOfReleaseRln(MainEty, ety), Effects); } if (!ConfirmEffectFm.Confirm(Effects)) { return; } //删除 foreach (Object obj in AttachGrdBind.SelectedObjects) { GrpMbrBF.ReleaseRln(MainEty, obj as BaseEntity); } //界面更新 MainGrd_SelectionChanged(sender, e); }
public static Boolean Confirm(IList <VcEffect> Effects) { if (Effects.Count == 0) { return(true); } ConfirmEffectFm Fm = new ConfirmEffectFm(); Fm.Effects = Effects; return(Fm.ShowDialog() == DialogResult.OK); }
private void tsAttachAdd_Click(object sender, EventArgs e) { //数据准备 BaseEntity MainEty = MainGrdBind.Current as BaseEntity; IList <BaseEntity> OldRlns = new List <BaseEntity>(); ExIList.Append <BaseEntity>(GrpMbrBF.GetRlns(MainEty), OldRlns); IList <BaseEntity> NewRlns = new List <BaseEntity>(); ExIList.Append <BaseEntity>(OldRlns, NewRlns); //交互:用户选择 if (!this.mainDataIsGroup) { NewRlns = SelectIF.GroupSelectMulti(GrpMbrBF, NewRlns); if (NewRlns == null) { return; } } else { NewRlns = SelectIF.MemberSelectMulti(GrpMbrBF, NewRlns); if (NewRlns == null) { return; } } //删除/增加确认 IList <VcEffect> Effects = new List <VcEffect>(); foreach (BaseEntity ety in OldRlns) { if (!NewRlns.Contains(ety)) { ExIList.Append <VcEffect>(this.grpMbrBF.EffectOfReleaseRln(MainEty, ety), Effects); } } foreach (BaseEntity ety in NewRlns) { if (!OldRlns.Contains(ety)) { ExIList.Append <VcEffect>(this.grpMbrBF.EffectOfCreateRln(MainEty, ety), Effects); } } if (!ConfirmEffectFm.Confirm(Effects)) { return; } //删除/增加 foreach (BaseEntity ety in OldRlns) { if (!NewRlns.Contains(ety)) { GrpMbrBF.ReleaseRln(MainEty, ety); } } foreach (BaseEntity ety in NewRlns) { if (!OldRlns.Contains(ety)) { GrpMbrBF.CreateRln(MainEty, ety); } } //界面更新 MainGrd_SelectionChanged(sender, e); }