public BindingListView(EventTaskScheduler eventTaskScheduler) : base(new List <RowItem>()) { EventTaskScheduler = eventTaskScheduler; QueryLock = new QueryLock(CancellationToken.None); _queryResults = QueryResults.Empty; _itemProperties = ImmutableList <DataPropertyDescriptor> .EMPTY; _queryRequestor = new QueryRequestor(this); AllowNew = AllowRemove = AllowEdit = false; }
public void Dispose() { RowSource = null; _queryRequestor.Dispose(); _queryResults = null; if (EventTaskScheduler != null) { EventTaskScheduler.Dispose(); } }
public void SetFinalQueryResults(QueryResults newResults) { var action = new Action(() => { try { LiveQueryResults = newResults; _queryRequestor._bindingListView.UpdateResults(); } catch (Exception exception) { OnUnhandledException(exception); } }); if (null == EventTaskScheduler) { action.Invoke(); } else { EventTaskScheduler.Run(action); } }
public FoldChangeBindingSource(GroupComparisonModel groupComparisonModel) { _container = new Container(); GroupComparisonModel = groupComparisonModel; _taskScheduler = new EventTaskScheduler(); }