Exemple #1
0
        internal static GridState CreateDefault(CandyGrid grid)
        {
            var result = new GridState
            {
                PageNumber = 1,
                PageSize   = 20,
                SearchText = string.Empty,
            };

            var columns = new List <GridColumnState>(grid.Columns.Count);

            foreach (var col in grid.Columns)
            {
                columns.Add(new GridColumnState
                {
                    Name           = col.Field,
                    FilterArgument = Array.Empty <string>(),
                    FilterOperator = CompareOperators.None,
                    FilterText     = string.Empty
                });
            }

            result.Columns = columns;
            return(result);
        }
Exemple #2
0
        } = 0;                                       // (int)Math.Round(DateTime.UtcNow.Subtract(DateTime.Now).TotalMinutes, 0);

        /// <summary>
        /// Updates this request object from a CandyGrid.
        /// </summary>
        /// <param name="grid"></param>
        internal void UpdateFrom(CandyGrid grid)
        {
            Counter   += 1;
            Columns    = grid.GetGridDataRequestColumns();
            Skip       = grid.PageSize <= 0 ? 0 : Math.Max(0, grid.PageNumber - 1) * grid.PageSize;
            Take       = grid.PageSize < 0 ? -1 : grid.PageSize;
            SearchText = grid.SearchText ?? string.Empty;
        }
Exemple #3
0
        internal static IGridDataColumn[] GetGridDataRequestColumns(this CandyGrid grid)
        {
            var properties = grid.DataAdapter.DataItemType.PropertyProxies().Values.Where(t => t.IsFlatType);
            var result     = new List <IGridDataColumn>(properties.Count());

            foreach (var property in properties)
            {
                var column = grid.Columns
                             .FirstOrDefault(c => property.Name.Equals(c.Field, PropertyNameComparer));

                result.Add(column as IGridDataColumn
                           ?? new CandyGridColumn(property, null));
            }

            return(result.ToArray());
        }
Exemple #4
0
        private void ToggleCheckedForAll(CandyGrid sender)
        {
            foreach (var row in sender.Rows)
            {
                if (row.DataItem == null)
                {
                    continue;
                }

                if (row.DataItem is not Product product)
                {
                    return;
                }

                product.IsChecked = !product.IsChecked;
                UpdateSelected(row);
            }
        }
Exemple #5
0
        internal static GridState FromGrid(CandyGrid grid, GridDataRequest request)
        {
            var result = new GridState
            {
                PageNumber = grid.PageNumber,
                PageSize   = grid.PageSize,
                SearchText = grid.SearchText,
            };

            var columns = new List <GridColumnState>(request.Columns.Count);

            foreach (var col in request.Columns)
            {
                columns.Add(GridColumnState.FromOther(col));
            }

            result.Columns = columns;
            return(result);
        }
 public GridEventArgs(CandyGrid grid)
 {
     Grid = grid;
 }
 public GridExceptionEventArgs(CandyGrid grid, Exception exception)
     : base(grid)
 {
     Exception = exception;
 }
 public GridStateEventArgs(CandyGrid grid, GridState state, bool isReset)
     : base(grid)
 {
     State   = state;
     IsReset = isReset;
 }