예제 #1
0
        private void ApplyColumnAnnotationSettings(IGridColumn <T> column, GridColumnAttribute options)
        {
            column.Encoded(options.EncodeEnabled)
            .Sanitized(options.SanitizeEnabled)
            .Filterable(options.FilterEnabled)
            .Sortable(options.SortEnabled);

            GridSortDirection?initialDirection = options.GetInitialSortDirection();

            if (initialDirection.HasValue)
            {
                column.SortInitialDirection(initialDirection.Value);
            }

            GridAggregateFunction?aggregateValue = options.GetAggregateFunction();

            if (aggregateValue.HasValue)
            {
                column.Aggregate(aggregateValue.Value);
            }

            if (!string.IsNullOrEmpty(options.FilterWidgetType))
            {
                column.SetFilterWidgetType(options.FilterWidgetType);
            }

            if (!string.IsNullOrEmpty(options.Format))
            {
                column.Format(options.Format);
            }
            if (!string.IsNullOrEmpty(options.Title))
            {
                column.Titled(options.Title);
            }
            if (!string.IsNullOrEmpty(options.Width))
            {
                column.Width = options.Width;
            }
            if (!string.IsNullOrEmpty(options.ToolTip))
            {
                column.ToolTip = options.ToolTip;
            }
            if (!string.IsNullOrEmpty(options.Css))
            {
                column.Css(options.Css);
            }
            if (!string.IsNullOrEmpty(options.BoolTrue))
            {
                column.BoolTrue = options.BoolTrue;
            }
            if (!string.IsNullOrEmpty(options.BoolFalse))
            {
                column.BoolFalse = options.BoolFalse;
            }
            if (!string.IsNullOrEmpty(options.AggregateFormat))
            {
                column.AggregateFormat = options.AggregateFormat;
            }
        }