5.20193.637
Column Wijmo API Class

Column Class

Represents a column on the grid.

Heirarchy

Constructors

constructor

  • new Column(options?: any): Column
  • Initializes a new instance of the Column class.

    Parameters

    • Optional options: any

      Initialization options for the column.

    Returns Column

Properties

aggregate

aggregate: Aggregate

Gets or sets the Aggregate to display in the group header rows for the column.

align

align: string

Gets or sets the horizontal alignment of cells in the column or row.

The default value for this property is null, which causes the grid to select the alignment automatically based on the column's dataType (numbers are right-aligned, Boolean values are centered, and other types are left-aligned).

If you want to override the default alignment, set this property to 'left', 'right', 'center', or 'justify'.

allowDragging

allowDragging: boolean

Gets or sets a value that indicates whether the user can move the column or row to a new position with the mouse.

The default value for this property is true.

allowMerging

allowMerging: boolean

Gets or sets a value that indicates whether cells in the column or row can be merged.

The default value for this property is false.

allowResizing

allowResizing: boolean

Gets or sets a value that indicates whether the user can resize the column or row with the mouse.

The default value for this property is true.

allowSorting

allowSorting: boolean

Gets or sets a value that indicates whether the user can sort the column by clicking its header.

binding

binding: string

Gets or sets the name of the property the column is bound to.

cellTemplate

cellTemplate: string | ICellTemplateFunction

Gets or sets an {@link ICellTemplateFunction} or a template string to be used for generating the HTML content of data cells in this Column.

Cell template strings use template literal syntax. The content string is generated using a scope of type ICellTemplateContext.

{@link ICellTemplateFunction} functions take an argument of type ICellTemplateContext and return the HTML content to be displayed in the cell.

For example:

// simple/default rendering with template string
col.cellTemplate = '${value}:${col.format}';

// conditional formatting with template string
col.cellTemplate = '<span class=${value > 40000 ? "big-val" : "small-val"}>${text}</span>';

// conditional formatting with ICellTemplateFunction:
col.cellTemplate = (ctx: ICellTemplateContext) => {
     return '<span class="{cls}">{val}</span>'
         .replace('{cls}', ctx.value > 40000 ? 'big-val' : 'small-val')
         .replace('{val}', ctx.text);
};

The cellTemplate property provides a simpler (but less powerful) alternative than the formatItem event or the cell templates available in the Wijmo interop modules.

Template strings require template literals and therefore are not supported in IE.

When using cell templates, you should still set the column's binding and format properties. They will be used in edit mode and to support copy/paste/export operations.

collectionView

collectionView: ICollectionView

Gets the ICollectionView bound to this column or row.

cssClass

cssClass: string

Gets or sets a CSS class name to use when rendering data (non-header) cells in the column or row.

cssClassAll

cssClassAll: string

Gets or sets a CSS class name to use when rendering all cells (data and headers) in the column or row.

currentSort

currentSort: string

Gets a string that describes the current sorting applied to the column. Possible values are '+' for ascending order, '-' for descending order, or null for unsorted columns.

currentSortIndex

currentSortIndex: number

Gets the index of this column in the sort descriptions array for the grid's collection view.

dataMap

dataMap: DataMap

Gets or sets the DataMap used to convert raw values into display values for the column or row.

Columns with an associated dataMap show drop-down buttons that can be used for quick editing. If you do not want to show the drop-down buttons, set the column's showDropDown property to false.

Cell drop-downs require the wijmo.input module to be loaded.

dataType

dataType: DataType

Gets or sets the type of value stored in the column or row.

Values are coerced into the proper type when editing the grid.

describedById

describedById: string

Gets or sets the ID of an element that contains a description of the column.

The ID is used as the value of the aria-describedby attribute for the column header element.

dropDownCssClass

dropDownCssClass: string

Gets or sets a CSS class name to add to drop-downs in this column or row.

The drop-down buttons are shown only if the column has a dataMap set and is editable. Clicking on the drop-down buttons causes the grid to show a list where users can select the value for the cell.

Cell drop-downs require the wijmo.input module to be loaded.

format

format: string

Gets or sets the format string used to convert raw values into display values for the column or row (see Globalize).

grid

grid: FlexGrid

Gets the FlexGrid that owns this column or row.

header

header: string

Gets or sets the text displayed in the column header.

index

index: number

Gets the index of the column or row in the parent collection.

inputType

inputType: string

Gets or sets the "type" attribute of the HTML input element used to edit values in this column or row.

By default, this property is set to "tel" for numeric columns, and to "text" for all other non-boolean column types. The "tel" input type causes mobile devices to show a numeric keyboard that includes a negative sign and a decimal separator.

Use this property to change the default setting if the default does not work well for the current culture, device, or application. In these cases, try setting the property to "number" or simply "text."

isContentHtml

isContentHtml: boolean

Gets or sets a value that indicates whether cells in this column or row contain HTML content rather than plain text.

This property only applies to regular cells. Row and column header cells contain plain text by default. If you want to display HTML in column or row headers, you must use the FlexGrid.formatItem event and set the cell's innerHTML content in code.

The default value for this property is false.

isReadOnly

isReadOnly: boolean

Gets or sets a value that indicates whether cells in the column or row can be edited.

The default value for this property is true.

isRequired

isRequired: boolean

Gets or sets a value that determines whether values in this column or row are required.

By default, this property is set to null, which means values are required, but non-masked string columns may contain empty strings.

When set to true, values are required and empty strings are not allowed.

When set to false, null values and empty strings are allowed.

isSelected

isSelected: boolean

Gets or sets a value that indicates whether the column or row is selected.

isVisible

isVisible: boolean

Gets a value that indicates whether the column or row is visible and not collapsed.

This property is read-only. To change the visibility of a column or row, use the visible property instead.

mask

mask: string

Gets or sets a mask to use while editing values in this column or row.

The mask format is the same used by the wijmo.input.InputMask control.

If specified, the mask must be compatible with the value of the format property. For example, the mask '99/99/9999' can be used for entering dates formatted as 'MM/dd/yyyy'.

maxLength

maxLength: number

Gets or sets the maximum number of characters that the can be entered into cells in this column or row.

This property is set to null by default, which allows entries with any number of characters.

maxWidth

maxWidth: number

Gets or sets the maximum width (in pixels) of the column.

This property is set to null by default, which means there is no maximum width.

minWidth

minWidth: number

Gets or sets the minimum width of the column.

This property is set to null by default, which means there is the minimum width is zero.

multiLine

multiLine: boolean

Gets or sets a value that indicates whether the content of cells in this column or row should wrap at new line characters (\n).

The default value for this property is false.

name

name: string

Gets or sets the name of the column.

The column name can be used to retrieve the column using the FlexGrid.getColumn method.

pos

pos: number

Gets the position of the column or row in pixels.

quickAutoSize

quickAutoSize: boolean

Gets or sets a value that determines whether the grid should optimize performance over precision when auto-sizing this column.

Setting this property to false disables quick auto-sizing for this column.

Setting it to true enables the feature, subject to the value of the grid's wijmo.grid.FlexGrid.quickAutoSize property.

Setting it to null (the default value) enables the feature for columns that display plain text and don't have templates.

renderSize

renderSize: number

Gets the render size of the column or row.

This property accounts for visibility, default size, and min and max sizes.

renderWidth

renderWidth: number

Gets the render width of the column.

The value returned takes into account the column's visibility, default size, and min and max sizes.

showDropDown

showDropDown: boolean

Gets or sets a value that indicates whether the grid adds drop-down buttons to the cells in this column or row.

The drop-down buttons are shown only if the column has a dataMap set and is editable. Clicking on the drop-down buttons causes the grid to show a list where users can select the value for the cell.

Cell drop-downs require the wijmo.input module to be loaded.

The default value for this property is true.

size

size: number

Gets or sets the size of the column or row.

Setting this property to null or negative values causes the element to use the parent collection's default size.

sortMemberPath

sortMemberPath: string

Gets or sets the name of the property to use when sorting this column.

Use this property in cases where you want the sorting to be performed based on values other than the ones specified by the binding property.

Setting this property is null causes the grid to use the value of the binding property to sort the column.

visible

visible: boolean

Gets or sets a value that indicates whether the column or row is visible.

visibleIndex

visibleIndex: number

Gets the index of the column or row in the parent collection ignoring invisible elements (isVisible).

width

width: any

Gets or sets the width of the column.

Column widths may be positive numbers (sets the column width in pixels), null or negative numbers (uses the collection's default column width), or strings in the format '{number}*' (star sizing).

The star-sizing option performs a XAML-style dynamic sizing where column widths are proportional to the number before the star. For example, if a grid has three columns with widths "100", "", and "3", the first column will be 100 pixels wide, the second will take up 1/4th of the remaining space, and the last will take up the remaining 3/4ths of the remaining space.

Star-sizing allows you to define columns that automatically stretch to fill the width available. For example, set the width of the last column to "*" and it will automatically extend to fill the entire grid width so there's no empty space. You may also want to set the column's minWidth property to prevent the column from getting too narrow.

wordWrap

wordWrap: boolean

Gets or sets a value that indicates whether the content of cells in this column or row should wrap to fit the available column width.

The default value for this property is false.

Methods

getAlignment

  • getAlignment(row?: Row): string
  • Gets the actual alignment if items in the column or row.

    Returns the value of the align property if it is not null, or selects the alignment based on the column's dataType.

    Parameters

    • Optional row: Row

      Row that contains the cell being checked.

    Returns string

    A string representing the cell alignment.

getIsRequired

  • getIsRequired(row?: Row): boolean
  • Gets a value that determines whether values in the column/row are required.

    Returns the value of the isRequired property if it is not null, or determines the required status based on the column's dataType.

    By default, string columns are not required unless they have an associated dataMap or mask; all other data types are required.

    Parameters

    • Optional row: Row

      Row that contains the cell being checked.

    Returns boolean

    True if the value is required, false otherwise.

onGridChanged

onPropertyChanged

  • onPropertyChanged(): void

Events

gridChanged

gridChanged: Event<RowCol, EventArgs>

Occurs when the value of the grid property changes.