| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- using System;
- using System.Threading;
- using System.Windows.Forms;
- using System.Windows.Media.Imaging;
- using Comal.Classes;
- using InABox.Core;
- using InABox.DynamicGrid;
- using InABox.WPF;
- using Button = System.Windows.Controls.Button;
- namespace PRSDesktop;
- public class MeetingItemMotionGrid : DynamicDataGrid<MeetingMotion>
- {
- public Guid MeetingItemID { get; set; }
-
- public MeetingItemMotionGrid()
- {
- AddButton("Show Votes", null, null, ShowVotes);
- //ActionColumns.Add(new DynamicImageColumn(VoteImage, VoteAction) { Position = DynamicActionColumnPosition.End });
- }
- private bool ShowVotes(Button arg1, CoreRow[] arg2)
- {
- MessageBox.Show("Not Implemented");
- return false;
- }
- protected override void DoReconfigure(DynamicGridOptions options)
- {
- base.DoReconfigure(options);
- options.Clear();
- options.AddRows = true;
- options.EditRows = true;
- options.DeleteRows = true;
- options.RecordCount = true;
- options.SelectColumns = true;
- }
-
- protected override bool CanCreateItems()
- {
- return MeetingItemID != Guid.Empty && base.CanCreateItems();
- }
- public override MeetingMotion CreateItem()
- {
- if (MeetingItemID == Guid.Empty)
- throw new Exception("No Meeting Selected!");
- var result = base.CreateItem();
- result.Item.ID = MeetingItemID;
- return result;
- }
- protected override void Reload(
- Filters<MeetingMotion> criteria, Columns<MeetingMotion> columns, ref SortOrder<MeetingMotion>? sort,
- CancellationToken token, Action<CoreTable?, Exception?> action)
- {
- criteria.Add(MeetingItemID == Guid.Empty
- ? new Filter<MeetingMotion>(x=>x.ID).None()
- : new Filter<MeetingMotion>(x => x.Item.ID).IsEqualTo(MeetingItemID));
- base.Reload(criteria, columns, ref sort, token, action);
- }
-
- }
|