Example #1
0
        public TableFilterSetter(FilterProto filter, bool isFilterCreated) : base(filter)
        {
            _rng     = Current.CurRegion.ActiveCell;
            _coluumn = _rng.Column - Current.CurRegion.TblRange.FirstCol + 1;
            var cols = Current.CurRegion.ActiveRow.ExCells;

            if (isFilterCreated)
            {
                return;
            }
            filter.CanFilter = false;
            int i = 0;

            for (; i < cols.Length; i++)
            {
                if (!string.Equals(cols[i].ColName, filter.Name, StringComparison.OrdinalIgnoreCase))
                {
                    continue;
                }
                filter.CanFilter = true;
                _rng             = cols[i].Rng;
                _coluumn         = i + 1;
                break;
            }
        }
Example #2
0
        public PivotFilterSetter(FilterProto filter) : base(filter)
        {
            filter.CanFilter = false;
            int i      = 0;
            var fields = Current.CurRegion.ActiveRow.PivotFields;

            for (; i < fields.Length; i++)
            {
                if (!string.Equals(fields[i].Name, filter.Name, StringComparison.OrdinalIgnoreCase))
                {
                    continue;
                }

                /*if (filter.GetType() == typeof(DateFilter) || filter.GetType() == typeof(DateFilter))
                 *  if (fields[i].DataType != XlPivotFieldDataType.xlDate) continue;*/
                if (filter.GetType() == typeof(NumericFilter))
                {
                    if (fields[i].DataType != XlPivotFieldDataType.xlNumber)
                    {
                        continue;
                    }
                }
                filter.CanFilter = true;
                _pivField        = fields[i];
                break;
            }
        }
Example #3
0
 public FilterSetter(FilterProto filter)
 {
     _filter = filter;
 }