DigitalFormSubscriptionsGrid.cs 984 B

12345678910111213141516171819202122232425262728293031323334
  1. using Comal.Classes;
  2. using InABox.Core;
  3. using InABox.DynamicGrid;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. namespace PRSDesktop
  10. {
  11. class DigitalFormSubscriptionsGrid : DynamicOneToManyGrid<Employee, EmployeeFormSubscription>
  12. {
  13. protected override void DoAdd()
  14. {
  15. var formIDs = Items.Select(x => x.Form.ID).ToArray();
  16. var dlg = new MultiSelectDialog<DigitalForm>(new Filter<DigitalForm>(x => x.ID).NotInList(formIDs), null, true);
  17. if (dlg.ShowDialog())
  18. {
  19. var items = dlg.Items(null);
  20. foreach(var item in items)
  21. {
  22. var newItem = CreateItem();
  23. newItem.Form.ID = item.ID;
  24. newItem.Form.Synchronise(item);
  25. SaveItem(newItem);
  26. }
  27. Refresh(false, true);
  28. }
  29. }
  30. }
  31. }