{/* Do not edit this file. It is automatically generated by API Documenter. */}


## Column information model inherited from DataColumn

[ValueColumn](/refs/Interface/ValueColumn)

**Signature:**

```typescript
export interface DataColumn extends ValueColumn 
```
**Extend s: ** [ValueColumn](/refs/Interface/ValueColumn)

## Remarks

Contains additional sorting, filtering, group information, etc.

\[Superclass\]

[GridColumn](/refs/Interface/GridColumn) - [ValueColumn](/refs/Interface/ValueColumn)

## Events

| Property | Type | Description |
| --- | --- | --- |
| [displayCallback](/refs/Interface/DataColumn#displaycallback) | [DisplayCallback](/refs/realgrid#displaycallback) | A callback for setting values ​​to be displayed on the screen. |
| [mergeCallback](/refs/Interface/DataColumn#mergecallback) | [MergeCallback](/refs/realgrid#mergecallback) | A callback for the user to specify values ​​required for merging. |
| [objectCallback](/refs/Interface/DataColumn#objectcallback) | [ColumnObjectCallback](/refs/realgrid#columnobjectcallback) | Callback to set the value displayed on the screen when the dataType of the field is `object`{/* */} |

## Properties

| Property | Type | Description |
| --- | --- | --- |
| [autoFilter](/refs/Interface/DataColumn#autofilter) | boolean | Whether to apply automatic filtering |
| [autoFilters](/refs/Interface/DataColumn#autofilters) | [ColumnFilterCollection](/refs/Interface/ColumnFilterCollection) | Automatically created filters |
| [breakMergeOnEmpty](/refs/Interface/DataColumn#breakmergeonempty) | boolean | Whether to stop merging when there is an empty cell |
| [button](/refs/Interface/DataColumn#button) | [CellButton](/refs/realgrid#cellbutton) | Type of button to display on the right side of data cell |
| [buttonWidth](/refs/Interface/DataColumn#buttonwidth) | number | width of button |
| [cellProtectProps](/refs/Interface/DataColumn#cellprotectprops) | [CellProtectProperties](/refs/Interface/CellProtectProperties) | Set to lock cells or hide formulas when exporting to Excel. |
| [defaultValue](/refs/Interface/DataColumn#defaultvalue) | any | initial value |
| [displayText](/refs/Interface/DataColumn#displaytext) | string | text displayed in header/export/feedback; |
| [editable](/refs/Interface/DataColumn#editable) | boolean | Editability |
| [equalBlank](/refs/Interface/DataColumn#equalblank) | boolean | Whether to bundle cells when the value is the same as the cell in the previous row of the same column |
| [equalBlankExpression](/refs/Interface/DataColumn#equalblankexpression) | string | Formula to be treated as the same value if [equalBlank](/refs/Interface/DataColumn#equalblank) is `true`{/* */} |
| [equalBlankLine](/refs/Interface/DataColumn#equalblankline) | boolean | Whether to display the bottom line of a cell when the value is the same as the previous row |
| [equalBlankText](/refs/Interface/DataColumn#equalblanktext) | string | string displayed when the value is the same as the previous row |
| [excelFormat](/refs/Interface/DataColumn#excelformat) | string | Format displayed when exporting to Excel |
| [excelFormulaStatement](/refs/Interface/DataColumn#excelformulastatement) | string | Formula displayed when exporting to Excel |
| [fieldIndex](/refs/Interface/DataColumn#fieldindex) | number | Index of the field represented by the column |
| [fieldName](/refs/Interface/DataColumn#fieldname) | string | Name of the data field represented by the column |
| [filterable](/refs/Interface/DataColumn#filterable) | boolean | Filterability |
| [filterIconVisible](/refs/Interface/DataColumn#filtericonvisible) | boolean | Filter Icon Visibility |
| [filters](/refs/Interface/DataColumn#filters) | [ColumnFilterCollection](/refs/Interface/ColumnFilterCollection) | Filters |
| [filterSelectorWidth](/refs/Interface/DataColumn#filterselectorwidth) | number | Width of filter selection window |
| [groupable](/refs/Interface/DataColumn#groupable) | boolean | If set to true, the user can group the column header by dragging it with the mouse. |
| [groupLevel](/refs/Interface/DataColumn#grouplevel) | number | Group order number of rowGroup. |
| [hasFilters](/refs/Interface/DataColumn#hasfilters) | boolean | Check whether there is a filter in the column. |
| [labelField](/refs/Interface/DataColumn#labelfield) | string | A field that specifies the list of values to be displayed in the column cell |
| [labels](/refs/Interface/DataColumn#labels) | string\[\] | List of values to be displayed in column cells |
| [lookupData](/refs/Interface/DataColumn#lookupdata) | [ConfigObject](/refs/realgrid#configobject) \| [ConfigObject](/refs/realgrid#configobject){/* */}\[\] | Set values and labels. |
| [lookupDisplay](/refs/Interface/DataColumn#lookupdisplay) | boolean | Whether to display the value of the labels item at the position corresponding to the value of the cell in the values list in the column cell |
| [lookupKeyFields](/refs/Interface/DataColumn#lookupkeyfields) | string\[\] | lookupKeyFields |
| [lookupSourceId](/refs/Interface/DataColumn#lookupsourceid) | string | ID of registered lookupSourceTree |
| [mergeEdit](/refs/Interface/DataColumn#mergeedit) | boolean | When editing a merged cell, all merged rows are changed. |
| [mergeRule](/refs/Interface/DataColumn#mergerule) | string \| \{ criteria: string; \} | Column merge rules |
| [nanText](/refs/Interface/DataColumn#nantext) | string | Text displayed if value is `NaN` |
| [objectKey](/refs/Interface/DataColumn#objectkey) | string | If the dataType of the field is `object`{/* */}, `name` you want to show on the screen |
| [placeHolder](/refs/Interface/DataColumn#placeholder) | string | String displayed when there is no cell data |
| [placeHolderStyleName](/refs/Interface/DataColumn#placeholderstylename) | string | Class name applied when there is no cell data |
| [readOnly](/refs/Interface/DataColumn#readonly) | boolean | readOnly or not |
| [required](/refs/Interface/DataColumn#required) | boolean | Required or not |
| [requiredLevel](/refs/Interface/DataColumn#requiredlevel) | [ValidationLevel](/refs/realgrid#validationlevel) | Level to be displayed when value is requested during validation |
| [requiredMessage](/refs/Interface/DataColumn#requiredmessage) | string | Message generated when a value is requested during verification |
| [showInlineFilter](/refs/Interface/DataColumn#showinlinefilter) | boolean | Whether to display input window of filterPanel |
| [sortable](/refs/Interface/DataColumn#sortable) | boolean | Sortability |
| [sortByLabel](/refs/Interface/DataColumn#sortbylabel) | boolean | Sort by Label |
| [sortDirection](/refs/Interface/DataColumn#sortdirection) | [SortDirection](/refs/realgrid#sortdirection) | Sort by |
| [sortOrder](/refs/Interface/DataColumn#sortorder) | number | Sort Order |
| [tag](/refs/Interface/DataColumn#tag) | any | Random value specified by user |
| [textOfInvalid](/refs/Interface/DataColumn#textofinvalid) | string | Text displayed if cell data is not in lookup values |
| [type](/refs/Interface/DataColumn#type) | "data" | type of column |
| [validations](/refs/Interface/DataColumn#validations) | [EditValidationCollection](/refs/Interface/EditValidationCollection) | List of [EditValidation](/refs/Interface/EditValidation) to apply to this column |
| [values](/refs/Interface/DataColumn#values) | string\[\] | List of actual values in column cells |
| [valueType](/refs/Interface/DataColumn#valuetype) | [ValueType](/refs/realgrid#valuetype) | dataType of the data field associated with the column |
| [zeroText](/refs/Interface/DataColumn#zerotext) | string | If the number is `0`{/* */}, set the string to be printed in the cell by replacing the value. |

## Methods

| Method | Type | Description |
| --- | --- | --- |
| [activateAllFilters(active)](/refs/Interface/DataColumn#activateallfilters) | activateAllFilters?(active: boolean): void; | Changes the active status of the filter registered in filters to the entered value. |
| [activateFilters(filterNames, active)](/refs/Interface/DataColumn#activatefilters) | activateFilters?(filterNames: string \| string\[\], active: boolean): void; | Changes the active status of the filter specified in filters. |
| [addFilters(filters, overwrite)](/refs/Interface/DataColumn#addfilters) | addFilters?(filters: ([ColumnFilter](/refs/Interface/ColumnFilter) \| [ConfigObject](/refs/realgrid#configobject){/* */}) \| ([ColumnFilter](/refs/Interface/ColumnFilter ) \| [ConfigObject](/refs/realgrid#configobject){/* */})\[\], overwrite?: boolean): void; | Add filter to filters. |
| [autoFilterRefresh(applyFilters)](/refs/Interface/DataColumn#autofilterrefresh) | autoFilterRefresh?(applyFilters: boolean): void; | When autoFilter is true, filter information is updated. |
| [clearFilters()](/refs/Interface/DataColumn#clearfilters) | clearFilters?(): void; | Delete and initialize the filter registered in filters. |
| [getActiveFilters(active)](/refs/Interface/DataColumn#getactivefilters) | getActiveFilters?(active: boolean): [ColumnFilter](/refs/Interface/ColumnFilter){/* */}\[\]; | Retrieves the entered filters that are in the active state. |
| [getFilter(filterName)](/refs/Interface/DataColumn#getfilter) | getFilter?(filterName: string): [ColumnFilter](/refs/Interface/ColumnFilter){/* */}; | Gets the column filter object. |
| [hideAllColumnFilters(hide)](/refs/Interface/DataColumn#hideallcolumnfilters) | hideAllColumnFilters?(hide: boolean): void; | Hide or display all filters in a column. |
| [hideColumnFilters(filterNames, hide)](/refs/Interface/DataColumn#hidecolumnfilters) | hideColumnFilters?(filterNames: string \| string\[\], hide: boolean): void; | Makes the specified filter invisible in the filter selector. Even in the hide state, the active state of the filter is applied to the grid. |
| [isFiltered()](/refs/Interface/DataColumn#isfiltered) | isFiltered?(): boolean; | <p>Check whether the column is being filtered.</p><p>\[Return value\] boolean</p> |
| [removeFilters(filterNames)](/refs/Interface/DataColumn#removefilters) | removeFilters?(filterNames: string \| string\[\]): void; | Remove filter from filters. |
| [setFilters(filters)](/refs/Interface/DataColumn#setfilters) | setFilters?(filters: ([ColumnFilter](/refs/Interface/ColumnFilter) \| [ConfigObject](/refs/realgrid#configobject){/* */})\[\]): void; | Set a filter on the column. |
| [toggleAllFilters()](/refs/Interface/DataColumn#toggleallfilters) | toggleAllFilters?(): void; | Toggle the active status of all filters in the column. |
| [toggleFilters(filterNames)](/refs/Interface/DataColumn#togglefilters) | toggleFilters?(filterNames: string \| string\[\]): void; | Toggle the active status of the specified filter. |

## Event Desk

### displayCallback

Callback to set the value displayed on the screen

`Type` - [DisplayCallback](/refs/realgrid#displaycallback)

<hr/>

### mergeCallback

A callback for the user to specify the values ​​needed for merging.

`Type` - [MergeCallback](/refs/realgrid#mergecallback)

**Remarks:**

The grid uses the returned value to determine whether to merge with the cell of the previous row.

<hr/>

### objectCallback

Callback to set the value displayed on the screen when the dataType of the field is `object`{/* */}

`Type` - [ColumnObjectCallback](/refs/realgrid#columnobjectcallback)

<hr/>

## Properties Desc

### autoFilter

Whether to apply automatic filtering

`Type` - boolean

<hr/>

### autoFilters

Automatically created filters

`Type` - [ColumnFilterCollection](/refs/Interface/ColumnFilterCollection)

**Remarks:**

It is updated when autoFilter is true and the filterIcon is clicked. Or update using [GridBase.autoFiltersRefresh()](/refs/Class/GridBase#autofiltersrefresh){/* */}.

<hr/>

### breakMergeOnEmpty

Whether to stop merging when there is an empty cell

`Type` - boolean

<hr/>

### button

Type of button to display on the right side of data cell

`Type` - [CellButton](/refs/realgrid#cellbutton)

<hr/>

### buttonWidth

width of button

`Type` - number

<hr/>

### cellProtectProps

Set to lock cells or hide formulas when exporting to Excel.

`Type` - [CellProtectProperties](/refs/Interface/CellProtectProperties)

**Remarks:**

Use with [GridExportOptions.sheetProtect](/refs/Interface/GridExportOptions#sheetprotect){/* */}.

<hr/>

### defaultValue

initial value

`Type` - any

**Remarks:**

This is the default value for the column when inserting or appending.

<hr/>

### displayText

text displayed in header/export/feedback;

`Type` - string

<hr/>

### editable

Editable?

`Type` - boolean

**Remarks:**

If the editable of the column is undefined, the editable of [GridBase.editOptions](/refs/Class/GridBase#editoptions){/* */} is followed.

If `true`{/* */}, the column is editable, and if `false`{/* */}, the grid editor is not activated.

<hr/>

### equalBlank

Whether to bundle cells when the value is the same as the cell in the previous row of the same column

`Type` - boolean

**Remarks:**

Unlike mergeRule, it does not merge cells and only shows text.

<hr/>

### equalBlankExpression

Formula to be treated as the same value if [equalBlank](/refs/Interface/DataColumn#equalblank) is `true`{/* */}

`Type` - string

<hr/>

### equalBlankLine

Whether to display the bottom line of a cell when the value is the same as the previous row

`Type` - boolean

<hr/>

### equalBlankText

String displayed when the value is the same as the value in the previous row

`Type` - string

<hr/>

### excelFormat

Format displayed when exporting to Excel

`Type` - string

**Remarks:**

Example) `excelFormat:  #,##0;[Red]- #,##0;-`

<hr/>

### excelFormulaStatement

Formula displayed when exporting to Excel

`Type` - string

**Remarks:**

Example) `excelFormulaStatement: '${excelcolumn[‘column 1’]}${row} + ${excelcolumn[‘column 2’]}${row}’`

<hr/>

### fieldIndex

Index of the field represented by the column

`Type` - number

<hr/>

### fieldName

The name of the data field represented by the column

`Type` - string

**Remarks:**

If you specify or do not specify a field name that does not exist, the cell corresponding to this column will not display anything.

<hr/>

### filterable

Is filtering possible?

`Type` - boolean

<hr/>

### filterIconVisible

Filter icon display status

`Type` - boolean

<hr/>

### filters

filters

`Type` - [ColumnFilterCollection](/refs/Interface/ColumnFilterCollection)

**Remarks:**

When returning, it only follows the [ColumnFilterCollection](/refs/Interface/ColumnFilterCollection) model, but when setting, it is the same as the parameter format of [GridBase.setColumnFilters()](/refs/Class/GridBase#setcolumnfilters).

<hr/>

### filterSelectorWidth

Width of filter selection window

`Type` - number

**Remarks:**

Specifies the width of the filter selection window.

<hr/>

### groupable

If set to true, the user can group the column header by dragging it with the mouse.

`Type` - boolean

<hr/>

### groupLevel

Group order number of rowGroup.

`Type` - number

**Remarks:**

The groupLevel of the field referenced by the column when in rowGroup state.

<hr/>

### hasFilters

Check whether there is a filter in the column.

`Type` - boolean

<hr/>

### labelField

A field that specifies the list of values to be displayed in the column cell.

`Type` - string

**Remarks:**

If labelField is specified as another field, the value of labelField in the same row as the cell of this field is displayed in the corresponding column cell instead of the actual value. The labelField property takes precedence over the values and labels properties.

<hr/>

### labels

List of values to be displayed in column cells

`Type` - string\[\]

**Remarks:**

If there is no item corresponding to the cell value in values, the cell value is displayed as is.

<hr/>

### lookupData

Set values and labels.

`Type` - [ConfigObject](/refs/realgrid#configobject) \| [ConfigObject](/refs/realgrid#configobject){/* */}\[\]

**Remarks:**

It is used to set values and labels after retrieving code information from the server in map form.

**Example:**


```js
var col = grid.columnByName("column");
var codeInfo = {
 "type": "areacode",
 "list": [
 {code:"11", text:"Seoul"},
 {code:"21", text:"Busan Metropolitan City"}
 ]
}
col.lookupData = codeInfo;

// When setting as an array.
var codeList = [
 {code:"11", text:"Seoul"},
 {code:"21", text:"Busan Metropolitan City"}
 ...
];
col.lookupData = codeList;
```

<hr/>

### lookupDisplay

Whether to display the value of the labels item at the position corresponding to the value of the cell in the values list in the column cell.

`Type` - boolean

<hr/>

### lookupKeyFields

lookupKeyFields

`Type` - string\[\]

**Remarks:**

Names of fields to retrieve preceding values when displaying lookup using lookupSourceTree

<hr/>

### lookupSourceId

ID of registered lookupSourceTree

`Type` - string

<hr/>

### mergeEdit

When editing a merged cell, all merged rows are changed.

`Type` - boolean

**Remarks:**

If `true`{/* */}, if a cell merged by mergeRule or mergedRowGrouping is modified, the entire merged row is modified. [commitByCell](/refs/Interface/EditOptions#commitbycell) must be `true`{/* */}.

<hr/>

### mergeRule

Column Merge Rules

`Type` - string \| \{ criteria: string; \}

**Remarks:**

Cells belonging to a column can be grouped and displayed. Set a formula to determine whether to merge with cells in the previous row. The `{criteria: string}`{/* */} format is used for compatibility with previous versions.

<hr/>

### nanText

Text displayed if value is `NaN`

`Type` - string

**Remarks:**

Only possible if dataType is numeric

<hr/>

### objectKey

If the dataType of the field is `object`{/* */}, `name` to be displayed on the screen

`Type` - string

**Remarks:**

objectKey is specifiedIf so, the corresponding `name`{/* */} can be edited.

<hr/>

### placeHolder

String displayed when there is no cell data

`Type` - string

**Remarks:**

If there is no data, the corresponding string is displayed.

<hr/>

### placeHolderStyleName

Class name applied when there is no cell data

`Type` - string

<hr/>

### readOnly

readOnly or not

`Type` - boolean

**Remarks:**

If `true`{/* */}, the grid editor is activated, but editing is not possible.

<hr/>

### required

Required?

`Type` - boolean

<hr/>

### requiredLevel

Level to display when value is requested during verification

`Type` - [ValidationLevel](/refs/realgrid#validationlevel)

<hr/>

### requiredMessage

Message generated when a value is requested during verification

`Type` - string

<hr/>

### showInlineFilter

Whether to display input window of filterPanel

`Type` - boolean

**Remarks:**

If [FilterPanel.showInput](/refs/Interface/FilterPanel#showinput){/* */} is `false`{/* */}, only column.showInlineFilter is `true`{/* */} is displayed.

<hr/>

### sortable

Sort possible

`Type` - boolean

**Remarks:**

If `false`{/* */}, it is not sorted even if you click on the column header.

<hr/>

### sortByLabel

Sort by label

`Type` - boolean

<hr/>

### sortDirection

sorting method

`Type` - [SortDirection](/refs/realgrid#sortdirection)

<hr/>

### sortOrder

sort order

`Type` - number

<hr/>

### tag

Random value specified by user

`Type` - any

**Remarks:**

You can get it using [columnByTag](/refs/Class/GridBase#columnbytag){/* */} or [columnsByTag](/refs/Class/GridBase#columnsbytag){/* */}.

<hr/>

### textOfInvalid

Text displayed if cell data is not in lookup values

`Type` - string

**Remarks:**

If you specify a string, that string is displayed.

<hr/>

### type

type of column

`Type` - "data"

<hr/>

### validations

List of [EditValidation](/refs/Interface/EditValidation) to apply to this column

`Type` - [EditValidationCollection](/refs/Interface/EditValidationCollection)

**Remarks:**

When returning, it follows the [EditValidationCollection](/refs/Interface/EditValidationCollection) model, but when setting, it is the same as the parameter format of [GridBase.setValidations()](/refs/Class/GridBase#setvalidations).

<hr/>

### values

List of actual values in column cells

`Type` - string\[\]

**Remarks:**

If there is no item corresponding to the cell value in values, the cell value is displayed as is.

<hr/>

### valueType

dataType of the data field associated with the column

`Type` - [ValueType](/refs/realgrid#valuetype)

<hr/>

### zeroText

If the number is `0`{/* */}, set the string to be printed in the cell by replacing the value.

`Type` - string

**Remarks:**

Only possible if dataType is numeric

<hr/>

## Method Desc

### activateAllFilters

Changes the active status of the filter registered in filters to the entered value.

**\[Parameter List\]**

`active` - boolean

boolean

**\[Return Value\] -** void

<hr/>

### activateFilters

Changes the active status of the filter specified in filters.

<hr/>

### addFilters

Add filter to filters.

**\[Parameter List\]**

`filters` - ([ColumnFilter](/refs/Interface/ColumnFilter) \| [ConfigObject](/refs/realgrid#configobject){/* */}) \| ([ColumnFilter](/refs/Interface/ColumnFilter) \| [ConfigObject](/refs/realgrid#configobject){/* */})\[\]

array of filter objects

`overwrite` - boolean

If filterName exists, overwrite defaultValue `false`

**\[Return Value\] -** void

**Remarks:**

Register a filter in the column.

<hr/>

### autoFilterRefresh

When autoFilter is true, filter information is updated.

<hr/>

### clearFilters

Delete and initialize the filter registered in filters.

<hr/>

### getActiveFilters

Retrieves the entered filters that are in the active state.

**\[Parameter List\]**

`active` - boolean

boolean;

**\[Return Value\] -** [ColumnFilter](/refs/Interface/ColumnFilter){/* */}\[\]

<hr/>

### getFilter

Gets the column filter object.

<hr/>

### hideAllColumnFilters

Hide or display all filters in a column.

**\[Parameter List\]**

`hide` - boolean

boolean;

**\[Return Value\] -** void

<hr/>

### hideColumnFilters

Makes the specified filter invisible in the filter selector. Even in the hide state, the active state of the filter is applied to the grid.

**\[Parameter List\]**

`filterNames` - string \| string\[\]

Array of name of filter to hide or show

`hide` - boolean

boolean;

**\[Return Value\] -** void

<hr/>

### isFiltered

Check whether the column is being filtered.

\[return value\] boolean

<hr/>

### removeFilters

Remove filter from filters.

<hr/>

### setFilters

Set a filter on the column.

**\[Parameter List\]**

`filters` - ([ColumnFilter](/refs/Interface/ColumnFilter) \| [ConfigObject](/refs/realgrid#configobject){/* */})\[\]

filter setting information array

**\[Return Value\] -** void

**Example:**


```js
var col = gridView.columnByName("areacode");
var filters = [{
 name:"Seoul",
 criteria:"value = '11'",
 active: true
}, {
 name:"Busan",
 criteria:"value = '21'",
 text:"Busan Metropolitan City",
 active: false
}];
col.setFilters(filters);
```

<hr/>

### toggleAllFilters

Toggle the active status of all filters in the column.

<hr/>

### toggleFilters

Toggle the active status of the specified filter.

**\[Parameter List\]**

`filterNames` - string \| string\[\]

Names of the filter whose active state you want to change

**\[Return Value\] -** void

<hr/>