Ejemplo n.º 1
0
        public void Search(bool resetPage = true)
        {
            if (IsSearching)
            {
                searchQueuedResetPage = resetPage;
                return;
            }

            ClearResults();

            IsSearching = true;

            var pag = Pagination as Pagination.Paginate;
            if (resetPage && pag != null && pag.CurrentPage != 1)
            {
                try
                {
                    avoidPaginationChange = true;
                    Pagination = new Pagination.Paginate(pag.ElementsPerPage, 1);
                }
                finally
                {
                    avoidPaginationChange = false;
                }
            }

            QueryRequest request = UpdateMultiplyMessage(true);

            request.QueryBatch(rt =>
            {
                hasBeenLoaded = true;

                resultTable = rt;

                if (rt != null)
                {
                    SetResults(rt);
                }
            },
            () =>
            {
                IsSearching = false;
                if (generateListViewColumnsQueued)
                {
                    generateListViewColumnsQueued = false;
                    GenerateListViewColumns();
                }
                if (searchQueuedResetPage != null)
                {
                    var c = searchQueuedResetPage.Value;
                    searchQueuedResetPage = null;
                    Search(c); 
                }
            });
        }
Ejemplo n.º 2
0
        private void cbElements_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (loading)
                return;

            switch (Pagination.GetMode())
            {
                case PaginationMode.All:
                    break;
                case PaginationMode.Firsts:
                    Pagination = new Pagination.Firsts((int)cbElements.SelectedItem);
                    break;
                case PaginationMode.Paginate:
                    Pagination = new Pagination.Paginate((int)cbElements.SelectedItem, 1);
                    break;
                default:
                    break;
            }


        }