예제 #1
0
        private async Task UpdateFilterResultAsync()
        {
            await Parent.ExecuteAsync(() =>
            {
                using (var ps = Progress.Start(_originalQueueList.Count, LongRunningState.No))
                {
                    _filterProgressScope = ps;

                    Queues.Clear();
                    QueuesFilterView.Refresh();
                    _filterProgressScope = null;
                }
            });
        }
예제 #2
0
        private void InitCollectionView(List <QueueInfo> queues)
        {
            _originalQueueList = queues;

            HasSystemQueues = queues.Any(q => q.QueueSource.IsSystemQueue);

            QueuesFilterView = (CollectionView)CollectionViewSource.GetDefaultView(queues);
            Queues.Clear();
            using (_filterProgressScope = Progress.Start(queues.Count, LongRunningState.No))
            {
                using (QueuesFilterView.DeferRefresh())
                {
                    QueuesFilterView.Filter = OnQueuesViewFilter;
                    QueuesFilterView.SortDescriptions.Add(
                        new SortDescription("Name", ListSortDirection.Ascending));
                }
            }

            StatusInfoViewModel.LastUpdateTimestamp = DateTime.Now;
        }