Class AutoFilterImpl
This class represents single autofilter item.
Inheritance
Inherited Members
Namespace: Syncfusion.XlsIO.Implementation
Assembly: Syncfusion.XlsIO.Base.dll
Syntax
public class AutoFilterImpl : IAutoFilter, ICloneParent
Constructors
AutoFilterImpl(AutoFiltersCollection)
Creates new instance.
Declaration
public AutoFilterImpl(AutoFiltersCollection parent)
Parameters
| Type | Name | Description |
|---|---|---|
| AutoFiltersCollection | parent | Parent filters collection. |
AutoFilterImpl(AutoFiltersCollection, AutoFilterRecord, Int32, Int32)
Creates new instance.
Declaration
[CLSCompliant(false)]
public AutoFilterImpl(AutoFiltersCollection parent, AutoFilterRecord record, int iColumnIndex, int iTopRow)
Parameters
| Type | Name | Description |
|---|---|---|
| AutoFiltersCollection | parent | Parent filters collection. |
| AutoFilterRecord | record | Base record. |
| System.Int32 | iColumnIndex | Column index. |
| System.Int32 | iTopRow | Row index. |
AutoFilterImpl(AutoFiltersCollection, Int32, Int32, Int32)
Creates new instance.
Declaration
public AutoFilterImpl(AutoFiltersCollection parent, int iColumnIndex, int iLastColumn, int iRowIndex)
Parameters
| Type | Name | Description |
|---|---|---|
| AutoFiltersCollection | parent | Parent filters collection. |
| System.Int32 | iColumnIndex | Column index. |
| System.Int32 | iLastColumn | |
| System.Int32 | iRowIndex | Row index. |
Properties
FilteredItems
Returns filter values for combination type ( Text and DateTime), dynamic and color type. It returns null, if custom filter is applied. Read-only.
Declaration
public IFilter FilteredItems { get; }
Property Value
| Type | Description |
|---|---|
| IFilter |
FilterType
Specifies the type of filter.
Declaration
public ExcelFilterType FilterType { get; set; }
Property Value
| Type | Description |
|---|---|
| ExcelFilterType |
FirstCondition
First condition of autofilter. Read-only.
Declaration
public IAutoFilterCondition FirstCondition { get; }
Property Value
| Type | Description |
|---|---|
| IAutoFilterCondition |
Index
Number of AutoFilter drop-down arrows on the sheet. ( One based )
Declaration
public int Index { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
IsAnd
True means to use AND operation between conditions, False to use OR.
Declaration
public bool IsAnd { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsBlanks
If filtered to blanks - true. Read-only.
Declaration
public bool IsBlanks { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsFiltered
False indicates that this autofilter was not used; otherwise True.
Declaration
public bool IsFiltered { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsFirstCondition
If true - than contain non default first condition; otherwise false. Read-only.
Declaration
public bool IsFirstCondition { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsNonBlanks
If filtered to nonblanks - true. Read-only.
Declaration
public bool IsNonBlanks { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsPercent
True if the Top 10 AutoFilter shows percentage; False if it shows items.
Declaration
public bool IsPercent { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsSecondCondition
If true - than contain non default second condition; otherwise false. Read-only.
Declaration
public bool IsSecondCondition { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsSimple1
True if the first condition is a simple equality.
Declaration
public bool IsSimple1 { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsSimple2
True if the second condition is a simple equality.
Declaration
public bool IsSimple2 { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsTop
True if the Top 10 AutoFilter shows the top items; False if it shows the bottom items.
Declaration
public bool IsTop { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsTop10
True if the condition is a Top 10 AutoFilter.
Declaration
public bool IsTop10 { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
SecondCondition
Second condition of autofilter. Read-only.
Declaration
public IAutoFilterCondition SecondCondition { get; }
Property Value
| Type | Description |
|---|---|
| IAutoFilterCondition |
Top10Number
Number of elements to show in Top10 mode.
Declaration
public int Top10Number { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Worksheet
Returns parent worksheet. Read-only.
Declaration
public WorksheetImpl Worksheet { get; }
Property Value
| Type | Description |
|---|---|
| WorksheetImpl |
WorksheetShapes
Returns shapes collection of the parent worksheet. Read-only.
Declaration
public ShapesCollection WorksheetShapes { get; }
Property Value
| Type | Description |
|---|---|
| ShapesCollection |
Methods
AddColorFilter(Color, ExcelColorFilterType)
Add Color Filter with the specified System.Drawing.Color object
Declaration
public void AddColorFilter(Color color, ExcelColorFilterType colorFilterType)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Drawing.Color | color | Color to be filtered. |
| ExcelColorFilterType | colorFilterType | Filter type applied. |
Examples
The following code illustrates the filtering cells based on cell color
ExcelEngine excelEngine = new ExcelEngine();
IApplication application = excelEngine.Excel;
application.DefaultVersion = ExcelVersion.Excel2013;
IWorkbook workbook = application.Workbooks.Open("ColorFilter.xlsx");
IWorksheet worksheet = workbook.Worksheets[0];
worksheet.AutoFilters.FilterRange = worksheet["A1:C30"];
IAutoFilter filter = worksheet.AutoFilters[1];
filter.AddColorFilter(ExcelColorFilterType.CellColor, System.Drawing.Color.Red);
workbook.SaveAs("FilteredbyColorFilter.xlsx");
workbook.Close();
excelEngine.Dispose();
The following code illustrates the filtering cells based on Font color
ExcelEngine excelEngine = new ExcelEngine();
IApplication application = excelEngine.Excel;
application.DefaultVersion = ExcelVersion.Excel2013;
IWorkbook workbook = application.Workbooks.Open("ColorFilter.xlsx");
IWorksheet worksheet = workbook.Worksheets[0];
worksheet.AutoFilters.FilterRange = worksheet["A1:C30"];
IAutoFilter filter = worksheet.AutoFilters[1];
filter.AddColorFilter(System.Drawing.Color.Red, ExcelColorFilterType.FontColor);
workbook.SaveAs("FilteredbyColorFilter.xlsx");
workbook.Close();
excelEngine.Dispose();
AddDateFilter(DateTime, DateTimeGroupingType)
Apply DateTime filter with the specified date time.
Declaration
public void AddDateFilter(DateTime dateTime, DateTimeGroupingType groupingType)
Parameters
| Type | Name | Description |
|---|---|---|
| System.DateTime | dateTime | Date with time which need to add. |
| DateTimeGroupingType | groupingType | Type of grouping. |
AddDateFilter(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeGroupingType)
Apply DateTime filter with the specified date time.
Declaration
public void AddDateFilter(int year, int month, int day, int hour, int mintue, int second, DateTimeGroupingType groupingType)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | year | year in the date time. |
| System.Int32 | month | month in the date time. |
| System.Int32 | day | day in the date time. |
| System.Int32 | hour | hour in the date time. |
| System.Int32 | mintue | mintue in the date time. |
| System.Int32 | second | Seconds in the date time. |
| DateTimeGroupingType | groupingType | With respective grouping type. |
AddDynamicFilter(DynamicFilterType)
Apply dynamic date filter based on the specified relative date constant.
Declaration
public void AddDynamicFilter(DynamicFilterType dateFilterType)
Parameters
| Type | Name | Description |
|---|---|---|
| DynamicFilterType | dateFilterType | Dynamic filer type. |
AddIconFilter(ExcelIconSetType, Int32)
Apply Icon Filter with the specfied iconId for the Iconset applied.
Declaration
public void AddIconFilter(ExcelIconSetType iconSetType, int iconId)
Parameters
| Type | Name | Description |
|---|---|---|
| ExcelIconSetType | iconSetType | IconSetType to be filtered from. |
| System.Int32 | iconId | IconId to be filtered. |
Examples
The following code illustrates applying icon filter based on the icon present in the cell.
ExcelEngine excelEngine = new ExcelEngine();
IApplication application = excelEngine.Excel;
application.DefaultVersion = ExcelVersion.Excel2013;
IWorkbook workbook = application.Workbooks.Open("IconFilter.xlsx");
IWorksheet worksheet = workbook.Worksheets[0];
IConditionalFormats formats = worksheet["B1:B15"].ConditionalFormats;
IConditionalFormat format = formats.AddCondition();
format.BackColorRGB = System.Drawing.Color.Red;
format.FormatType = ExcelCFType.IconSet;
format.IconSet.IconSet = ExcelIconSetType.ThreeArrows;
worksheet.AutoFilters.FilterRange = worksheet["A1:C30"];
IAutoFilter filter = worksheet.AutoFilters[1];
filter.AddIconFilter(ExcelIconSetType.ThreeArrows, 1);
workbook.SaveAs("FilteredBook.xlsx");
workbook.Close();
excelEngine.Dispose();
AddTextFilter(IEnumerable<String>)
Apply text filter with the specified string collection.
Declaration
public void AddTextFilter(IEnumerable<string> filterCollection)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<System.String> | filterCollection | IEnumerable collection of string |
AddTextFilter(String)
Apply text filter with the specified string.
Declaration
public void AddTextFilter(string filter)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | filter | string value need to add in the text filter |
Clear()
Clears content of the autofilter (shape corresponding to autofilter).
Declaration
public void Clear()
Clone(Object)
Clone current instance.
Declaration
public object Clone(object parent)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Object | parent | Parent object. |
Returns
| Type | Description |
|---|---|
| System.Object | Returns just created object. |
Parse(AutoFilterRecord, Int32, Int32)
Parses specified record.
Declaration
[CLSCompliant(false)]
public void Parse(AutoFilterRecord record, int iColumnIndex, int iRowIndex)
Parameters
| Type | Name | Description |
|---|---|---|
| AutoFilterRecord | record | Record to parse. |
| System.Int32 | iColumnIndex | Column index. |
| System.Int32 | iRowIndex | Row index. |
RemoveColorFilter()
Clears the applied color filter in the particular column
Declaration
public void RemoveColorFilter()
RemoveDate(DateTime, DateTimeGroupingType)
Remove specified date time from DateTime filter.
Declaration
public bool RemoveDate(DateTime dateTime, DateTimeGroupingType groupingType)
Parameters
| Type | Name | Description |
|---|---|---|
| System.DateTime | dateTime | Datetime which need to remove. |
| DateTimeGroupingType | groupingType | With respective grouping type |
Returns
| Type | Description |
|---|---|
| System.Boolean | Return true if the value is removed, else false. |
RemoveDate(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeGroupingType)
Remove specified date time from DateTime filter.
Declaration
public bool RemoveDate(int year, int month, int day, int hour, int mintue, int second, DateTimeGroupingType groupingType)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | year | year in the date time. |
| System.Int32 | month | month in the date time. |
| System.Int32 | day | day in the date time. |
| System.Int32 | hour | hour in the date time. |
| System.Int32 | mintue | mintue in the date time. |
| System.Int32 | second | Seconds in the date time. |
| DateTimeGroupingType | groupingType | With respective grouping type. |
Returns
| Type | Description |
|---|---|
| System.Boolean | Return true if the value is removed, else false. |
RemoveDynamicFilter()
Remove dynamic date filter if exist.
Declaration
public bool RemoveDynamicFilter()
Returns
| Type | Description |
|---|---|
| System.Boolean | Return true if the value is removed, else false. |
RemoveIconFilter()
Removes the IconFilter (If applied).
Declaration
public void RemoveIconFilter()
RemoveText(IEnumerable<String>)
Declaration
public bool RemoveText(IEnumerable<string> filterCollection)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<System.String> | filterCollection |
Returns
| Type | Description |
|---|---|
| System.Boolean |
RemoveText(String)
Remove text value in text filter with the specified string.
Declaration
public bool RemoveText(string filter)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | filter | String Value that have to remove from the Text filter. |
Returns
| Type | Description |
|---|---|
| System.Boolean | Return true if the value is removed, else false. |
Serialize(OffsetArrayList)
Saves autofilter as biff records.
Declaration
[CLSCompliant(false)]
public void Serialize(OffsetArrayList records)
Parameters
| Type | Name | Description |
|---|---|---|
| OffsetArrayList | records | Records to be serialized. |