MeetingDocumentGrid.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Windows;
  5. using System.Windows.Controls;
  6. using System.Windows.Media.Imaging;
  7. using Comal.Classes;
  8. using InABox.Core;
  9. using InABox.DynamicGrid;
  10. using InABox.WPF;
  11. using NPOI.OpenXmlFormats.Dml;
  12. namespace PRSDesktop
  13. {
  14. public class MeetingDocumentGrid : DynamicDataGrid<MeetingItemDocument>
  15. {
  16. public MeetingModel? Model { get; set; }
  17. public MeetingDocumentGrid()
  18. {
  19. Options.Clear();
  20. HiddenColumns.Add(x => x.DocumentLink.ID);
  21. HiddenColumns.Add(x => x.DocumentLink.FileName);
  22. }
  23. protected override void Reload(Filters<MeetingItemDocument> criteria, Columns<MeetingItemDocument> columns, ref SortOrder<MeetingItemDocument> sort,
  24. Action<CoreTable, Exception> action)
  25. {
  26. var meetingfilter = (Model == null) || (Model.ID == Guid.Empty)
  27. ? new Filter<MeetingItemDocument>().None()
  28. : new Filter<MeetingItemDocument>(x => x.EntityLink.Meeting.ID).IsEqualTo(Model.ID);
  29. criteria.Add(meetingfilter);
  30. base.Reload(criteria, columns, ref sort, action);
  31. }
  32. }
  33. }