using Comal.Classes; using InABox.Core; using InABox.DynamicGrid; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace PRSDesktop { class DigitalFormSubscriptionsGrid : DynamicOneToManyGrid { protected override void Init() { base.Init(); HiddenColumns.Add(x => x.Form.ID); } protected override void DoAdd(bool openEditorOnDirectEdit = false) { var formIDs = Items.Select(x => x.Form.ID).ToArray(); var dlg = new MultiSelectDialog(new Filter(x => x.ID).NotInList(formIDs), null, true); if (dlg.ShowDialog()) { var items = dlg.Items(null); foreach(var item in items) { var newItem = CreateItem(); newItem.Form.ID = item.ID; newItem.Form.Synchronise(item); SaveItem(newItem); } Refresh(false, true); } } } }