Row, cell and column selecting
TreeGrid documentation
There can be more selected rows and cells in grid. Don't confuse selected and focused row. The focused row is the only row with cursor (FRow). See Focus cursor.
By default can be selected only whole rows, to permit selecting of individual cells or cell ranges set
<Cfg SelectingCells='1'/>.
By default can be rows (and cells) selected by
Ctrl+click,
Shift+click,
Space,
Ctrl + drag,
Panel Select click or
drag.
To change default selecting behavior assign the selecting actions to different events.
By default is selection persistent. To clear selection after mouse click, add to action
OnClickCell="... ,ClearSelection".
To permit only selected row at a time, add the
ClearSelection before all selecting actions calls.
The selected rows can be deleted, moved or copied. They can be also sent to server.
The selected rows can be got by
GetSelRows method and used for any custom task. To find out what cells are selected read
Selected attribute of the cell.
<Cfg> bool
Selecting
[1]
If selecting rows or cells is permitted.
To control how rows and cells can be selected by a user, assign the selecting actions to appropriate events.
By default is permitted selecting rows but not selecting cells and columns
<Cfg Selecting='1' SelectingCells='0' ColSelecting='0'/>.
<Cfg> bool
SelectingText
[0]
If text selection in grid (standard browser behavior) by mouse is permitted.
To let a user to select text, there also must not be any drag action possible for the cell, otherwise the drag action is done.
If it is 1, there can be unwanted selection blinking during grid dragging and selection actions!
If it is 1, there can be problem in Firefox in dragging column caption for grouping, add <Header OnMouseDown='1'/> to solve it!
new 6.0 <Cfg> bool
SelectClass
[0]
If set to
1, selected cells can be highlighted also by CSS class attributes like color or font, defined in
GxColorSelected CSS class in Grid.css.
If set to
0, selected cells are highlighted only by background color.
It is used for SelectingCells, selected rows are always highlighted by CSS class.
The value 1 can slow down selecting cells.
new 12.1 <Cfg> bool
SelectClassRow
[0]
If set, adds ...ClassSelected CSS class also to row HTML tag.
For backward compatibility with TreeGrid before 12.0.
chg 11.0 upd 16.0 API event bool
OnSelect
(TGrid grid, TRow row, bool deselect, string[] Cols, bool test)
Called before the
row or its cells are selected or unselected. Called before the selection state of the row or its cells is changed.
deselect is
0 if the row or cells will be selected,
1 if the row or cells will be unselected.
Since 11.0 there is not used value 2.
(Since 11.0) Cols is a list of cells (column names) that will be changed (selected or unselected). It is set only if only some cells in the row will be changed.
(Since 12.0) If the whole column is selected, the
row is null and
Cols contains this only column.
(Since 16.0) The
test is set when only testing possibility of selecting the row or its cells.
(Since 9.1) Return true to suppress the action.
new 16.0 API event void
OnSelected
(TGrid grid, TRow row, bool deselect, string[] Cols)
Called after the
row or its cells are selected or unselected.
deselect is
0 if the row or cells have been be selected,
1 if the row or cells will be unselected.
Cols is a list of cells (column names) that will be changed (selected or unselected). It is set only if only some cells in the row will be changed.
If the whole column is selected, the
row is null and
Cols contains this only column.
upd 16.0 API event bool
OnSelectAll
(TGrid grid, int select, int type, bool test)
Called before all rows, columns
(since 12.0) or cells
(since 12.0) in grid are selected or unselected.
type -
(since 12.0) what is selected, bit array,
1 - cells,
2 rows,
4 columns. Now the values 0, 3, 5, 6, 7 are
not used.
select is
0 for unselect all,
1 select all, -
1 invert all (rows only).
(Since 16.0) The
test is set when only testing possibility of selecting all.
Return true to suppress the action.
new 16.0 API event void
OnSelectedAll
(TGrid grid, int select, int type)
Called after all rows, columns or cells in grid are selected or unselected.
type - what is selected, bit array,
1 - cells,
2 rows,
4 columns. Now the values 0, 3, 5, 6, 7 are
not used.
select is
0 for unselect all,
1 select all, -
1 invert all (rows only).
new 11.0 upd 12.0 API method void
ClearSelection
(int type = 7)
Clears whole selection, all rows, columns and cells, including hidden rows and columns. It is always
synchronous.
(Since 12.0) type is what to clear, bit array. 1.bit &
1 - cells, 2.bit &
2 - rows, 3.bit &
4 - columns.
new 12.0 API method bool
IsSelected
(TRow row, string col)
Returns true if given cell or row (col is null) or column (row is null) is selected.
<Actions>
ClearSelection
Not assigned to any event
Clears whole selection, including hidden rows. It is always
synchronous and never fails.
Add it to
OnClickCell and
OnClickOutside to clear selection after any click - to have
not persistent selection.
For example
<Actions OnClickCell='ClearSelection,FocusEdit' OnClickOutside='ClearSelection,Blur'/>
new 12.0 <Cfg> int
ClearSelected
[4]
When the whole row or column selection is cleared.
For cell selecting use SelectHidden instead.
It affects also
SearchAction Select.
It affects also
SelectAll /
DeselectAll /
InvertAll actions, e.g. to affect only all visible rows, set ClearSelected='6'.
1.bit &1 | If selection is cleared for deleted rows / columns. |
2.bit &2 | If selection is cleared for filtered rows / columns. |
3.bit &4 | If selection is cleared for manually hidden rows / columns. |
4.bit &8 | If selection is cleared for collapsed child rows. |
new 12.0 <Cfg> int
SelectAllType
[0]
How selecting all rows and columns works.
1.bit &1 | The SelectAll / SelectAllCols button is switched on when all rows / columns are selected. |
2.bit &2 | Unselecting single row or column or range of rows / columns will uncheck the SelectAll / SelectAllCols button. |
3.bit &4 |
Selecting single row or column or range of rows / columns will check the SelectAll / SelectAllCols button when all rows / columns will be selected.
Can be slow, iterates all rows for every select.
|
4.bit &8 | If the SelectAll / SelectAllCols is checked, the rows / columns on newly loaded or created pages will be selected. |
5.bit &16 | If the SelectAll / SelectAllCols is checked, the newly added rows / columns will be selected. |
Selecting rows
Selecting the whole rows
The whole rows selecting is permitted by
Selecting attribute.
new 9.1 upd 9.3 <Cfg> int
SelectingSingle
[0]
If set to
1 (1.bit), only one row can be selected in grid. Selecting other row clears previously selected row.
(new 9.3) If set to
2 (2. bit), the selected row cannot be unselected. The grid will have always selected one row.
(new 9.3) If set to
4 (3. bit), it clears the row selected in grid data on start.
Set to
7 for all the three features.
To permit selecting one row by click to panel and selecting multiple rows by ctrl+click use such actions instead:
<Actions OnClickPanelSelect="DeselectRow OR (ClearSelection,SelectRow)" OnCtrlClickPanelSelect="DeselectRow OR SelectRow"/>
<Cfg> bool
SaveSelected
[0] Saves information to cookies
If set to
1, saves all
Selected row ids to cookies. Therefore it remembers all Selected rows on the client.
Remember, cookies are limited to 4096 bytes for the whole page, so use this setting only for very small tables or use
PersistentCfg.
Use also as small row ids as possible (the amount of cookie space is used: id+1 bytes per selected row).
<Cfg> bool
CalculateSelected
[0]
If there are formulas in grid that use selected rows.
If set, all calculated rows are recalculated after selection changes.
upd 12.0 <I> int
CanSelect
[1]
If row and its cells can be selected.
0 | The row and its cells cannot be selected by any method. |
1 | The row and its cells can be selected. |
2 | (new 12.0) Only the whole row can be selected. |
3 | (new 12.0) Only the row individual cells can be selected. |
4 | (new 12.0) The row and its cells cannot be selected by any method, but the row cells are marked selected if the whole column is selected. |
Default value is
1 for all variable rows and
0 for fixed and space rows.
upd 12.0 <Header> bool
CanSelect
[1]
Deprecated since 12.0. Use Panel Buttons or Panel value instead to define the panel buttons for header row.
If the Panel
SelectAll button is enabled. Header row itself can never be selected.
upd 12.0 <I> int
Selected
[0]
It is set to
1 when the row is selected. It is colored yellow (by default setting in Grid.css).
It is set to
2 when the row contains some but not all selected cells.
(Since 12.0) It is set to
3 if the row is selected and it also contain some selected cells for
SelectingCells = 3.
There can be more selected rows in the grid. Don't confuse selected and focused row. The focused row is the row with cursor.
upd 9.2 <C> int
Select
[1]
If the default Panel button
Select is visible. This button is hidden also if
<Cfg Selecting="0"/>. This button is inactive when the row has
CanSelect='0'.
Click to this button selects the whole row. Dragging this button selects rows range.
(Since 9.2) If set to
2, it is similar to 1, but the button is checked only if the whole row is selected, not only individual cells.
Used only if the Panel Buttons and the cell value are not set.
upd 12.0 API method TRow[ ]
GetSelRows
(int type = null, string attr = null, bool first = null)
Returns all selected rows in JavaScript array. They are sorted according to their position in grid.
type (since 12.0) is bit array to choose rows to return,
prior 12.0 default value of type is 15 as 1+2+4+8.
type&3 = 0 return rows with Selected&1 if
SelectingCells ==3 otherwise return rows with any Selected set.
type&3 = 1 return rows with Selected&1,
type&3 = 2 return rows with Selected&2,
type&3 = 3 return rows with any Selected set.
type&4 = 4 including fixed rows,
type&8 = 8 without selected children of selected parent.
The iterated rows are affected also by
ClearSelected setting.
(new 12.0) If set
attr, returns only rows that have this attribute set, e.g. "CanDelete".
(new 12.0) If set
first =
1, returns true if some row is selected, otherwise false.
If set
first =
0, returns true if some row is unselected, otherwise false.
If
SelectingCells is permitted, to find out what cells are selected read
Selected attribute of the cell:
if(row[col+"Selected"]) ...
upd 12.0 API method bool
SelectRow
(TRow row, bool select = null, bool test = 0)
Selects / unselects whole row. Select the row if
select = 1, unselects if
select = 0.
If
select = null and the row has at least one selected cell, it is unselected, otherwise it is selected. For
SelectingCells = 3 just negates the whole row selection.
(Since 12.0) If set
test = 1, does not change anything, just test if the selecting is possible.
Returns true if selection changed.
upd 6.0 API method void
SelectAllRows
(int select = null)
Selects / unselects all rows.
If
select = 1 selects all rows,
select = 0 unselects all rows,
select = -1 invert all rows (every selected row will be unselected and vice versa)
If
select = null and some row is selected, unselects all rows, otherwise it selects all rows.
new 12.0 API variable bool
AllSelected
If all rows are selected or unselected. Can be
1 for all rows selected,
0 for no row selected or
null for other states or unknown state.
Depends on
SelectAllType setting.
<Actions>
SelectRows
Not assigned to any event, can be assigned to OnDrag... events only
Starts selecting range of rows by mouse dragging. Fails if
Selecting is 0.
<Actions>
DeselectRows
Not assigned to any event, can be assigned to OnDrag... events only
Starts deselecting range rows by mouse dragging. Fails if
Selecting is 0.
<Actions>
InvertRowsFirst
Assigned to OnCtrlDragRow event, can be assigned to OnDrag... events only
Starts selecting or deselecting range of rows by mouse dragging. Fails if
Selecting is 0.
If the actual row is selected (at least one cell), starts deselecting, otherwise starts selecting.
<Actions>
SelectOddRows
Not assigned to any event, can be assigned to OnDrag... events only
Starts selecting individual rows - every row under mouse cursor is selected. Fails if
Selecting is 0.
<Actions>
DeselectOddRows
Not assigned to any event, can be assigned to OnDrag... events only
Starts deselecting individual rows - every row under mouse cursor is deselected. Fails if
Selecting is 0.
<Actions>
InvertOddRows
Assigned to OnDragPanelSelect event, can be assigned to OnDrag... events only
Starts inverting selection of individual rows - every row under mouse cursor changes its selection state. Fails if
Selecting is 0.
<Actions>
SelectRow ...FARO
Assigned to OnSpace, OnCtrlClickCell and OnClickPanelSelect events
Selects actual or focused row. Fails if the row is already selected, cannot be selected or
Selecting is 0.
<Actions>
DeselectRow ...FARO
Assigned to OnSpace, OnCtrlClickCell and OnClickPanelSelect events
Deselects actual or focused row. Fails if the row is
not selected, cannot be selected or
Selecting is 0.
To invert selection action use "SelectRow OR DeselectRow".
<Actions>
SelectFocusedRows ...FARO
Not assigned to any event
Selects all focused rows. Fails if no row is focused or
Selecting is 0.
<Actions>
DeselectFocusedRows ...FARO
Not assigned to any event
Deselects all focused rows. Fails if no row is focused or
Selecting is 0.
<Actions>
InvertFocusedRowsFirst ...FARO
Not assigned to any event
Selects or deselects all focused rows. Fails if no row is focused or
Selecting is 0.
If the first focused row is selected, deselects all, otherwise selects all.
<Actions>
SelectRowRange
Not assigned to any event
Selects all rows between focused row and actual row, including both rows. Fails if
Selecting is 0.
<Actions>
DeselectRowRange
Not assigned to any event
Deselects all rows between focused row and actual row, including both rows. Fails if
Selecting is 0.
<Actions>
InvertRowRangeFirst
Assigned to OnShiftClickCell event
Selects or deselects all rows between focused row and actual row, including both rows. Fails if
Selecting is 0.
If the focused row is selected, deselects all, otherwise selects all.
<Actions>
SelectAll
Assigned to OnCtrlSpace and OnClickHeaderSelect events
Selects all visible rows. Fails if all rows are selected or cannot be selected or
Selecting is 0.
This action can be asynchronous!
<Actions>
DeselectAll
Assigned to OnCtrlSpace and OnClickHeaderSelect events
Deselects all visible rows. Fails if no rows is selected or cannot be selected or
Selecting is 0.
To always deselect all rows you should use ClearSelection instead!
This action can be asynchronous, so you should not call any other select actions after this in the same event!
chg 12.0 <Actions>
InvertAll
Assigned to OnCtrlClickHeaderSelect events
Inverts whole selection, unselects all visible selected rows and selects all unselected rows. Fails if
Selecting is 0.
Since 12.0 it fails if all rows are selected or unselected.
It is not the same as "SelectAll OR DeselectAll"!
Selecting cells
Selecting individual cells or cell ranges
chg 12.0 upd 15.0 <Cfg> int
SelectingCells
[0]
If selecting individual cells or cells ranges is permitted and how it affects row and column selecting.
It is disabled by default!
0 | No individual cells can be selected. Only whole rows or whole columns can be selected. |
| The rows and columns can have set Selected = 1 or 0, if they are selected or unselected. |
| |
1 | Shared cell and row/column selecting. Individual cells can be selected. Selecting row or columns selects all its cells. |
| The row has set Selected = 0, if it contains no cell selected. |
| The row has set Selected = 1, if it contains all cells selected. |
| The row has set Selected = 2, if it contains some cells selected and some unselected. And the selected individual cells have set its own Selected = 1 attribute. |
| The column has never set its Selected attribute in this case. Selecting or unselecting the whole column changes all rows Selected attributes and all cells Selected attributes. |
| |
2 | Only cell selecting. (Since 11.0, changed 12.0) Like 1, but row has never set Selected = 1 for all cells selected. |
| The row has set Selected = 0, if it contains no cell selected. |
| The row has set Selected = 2, if it contains some or all cells selected. And the selected individual cells have set its own Selected = 1 attribute. |
| The column has never set its Selected attribute in this case. Selecting or unselecting the whole column changes all rows Selected attributes and all cells Selected attributes. |
| |
3 | Independent cell and row/column selecting. (Since 12.0) |
| The individual cells can be selected or unselected independently on the whole row and column selection state. |
| The row has set Selected = 0, if it is not selected and has also no selected individual cells. |
| The row has set Selected = 1, if it is selected and has no selected individual cells. |
| The row has set Selected = 2, if it is unselected and contains some or all cells selected. The selected individual cells have set its own Selected = 1 attribute. |
| The row has set Selected = 3, if the row is selected and also has some or all its cell are selected. |
| The column has set its Selected to 1 or 0, if it is selected or unselected, regardless on selection state of its individual cells. |
| |
4 | Independent cell and row/column selecting, but shared functionality. (Since 15.0) |
| The Selected attribute are set the same as in 3. |
| All the cell ranges actions set the column or row attribute instead of individual cells if the column or row is selected. |
new 11.0 upd 15.0 <Cfg> int
SelectingFocus
[0]
If set, automatically selects focused area. Bit array.
1. bit
&1 - selects the focused area.
2. bit
&2 - also selects focused single cell.
3. bit
&4 -
(new 15.0) if focused whole rows and columns, sets
Selected attribute of the row and column, not in cells.
After every focused cell / focused area change clears all selected cells in grid.
Must be set also
Selecting and
SelectingCells.
new 12.0 <Cfg> int
SelectHidden
[0]
If cells in hidden rows and columns will be selected, bit array.
For whole rows or columns selection use ClearSelected
1.bit &1 | Cells in hidden rows can be selected. |
2.bit &2 | Cells in collapsed children can be selected. |
3.bit &4 | Cells in hidden columns can be selected. |
upd 12.0 <I> int
Selected
[0]
It is set to
1 when the row is selected. It is colored yellow (by default setting in Grid.css).
It is set to
2 when the row contains some selected cells.
(Since 12.0) It is set to
3 if the row is selected and it also contain some selected cells for
SelectingCells = 3.
There can be more selected rows in the grid. Don't confuse selected and focused row. The focused row is the row with cursor.
<I <cell> bool
Selected
[0]
It is set to
1 when the cell is selected. In this case the row has set
Selected = 2 or
3.
upd 12.0 <I> int
CanSelect
[1/0]
If row and its cells can be selected.
0 | The row and its cells cannot be selected by any method. |
1 | The row and its cells can be selected. |
2 | (new 12.0) Only the whole row can be selected. |
3 | (new 12.0) Only the row individual cells can be selected. |
4 | (new 12.0) The row and its cells cannot be selected by any method, but the row cells are selected if the whole column is selected. |
Default value is
1 for all variable rows and
0 for fixed and space rows.
new 7.1 upd 12.0 <C> int
CanSelect
[1/0]
If column and its cells can be selected.
0 | The column and its cells cannot be selected by any method. |
1 | The column and its cells can be selected. |
2 | (new 12.0) Only the whole column can be selected. |
3 | (new 12.0) Only the column individual cells can be selected. |
4 | (new 12.0) The column and its cells cannot be selected by any method, but the column cells are selected if the whole row is selected. |
Default value is
1 for all columns except Panel, ConstWidth and Index.
new 7.0 upd 11.0 API method [ ][ ]
GetSelRanges
(int rowtype = 0, int coltype = 0)
Returns all selected rectangles in table.
Returns it in two dimensional array: [ [
toprow1,
leftcol1,
bottomrow1,
rightcol1,
rowpos1,
colpos1,
rowcount1,
colcount1],[toprow2,leftcol2,bottomrow2,rightcol2, rowpos2,colpos2,rowcount2,colcount2],[toprow3,leftcol3,bottomrow3,rightcol3, rowpos3,colpos3,rowcount3,colcount3],...]
toprow /
bottomrow are the TRow object,
leftcol /
rightcol are the column names of the range edges.
rowpos /
colpos (new 11.0) are numbers as row / column position of top left corner of the range from grid top left corner. The
rowpos includes only iterated rows due
rowtype.
rowcount /
colcount (new 11.0) are numbers as row / column count in the range. The
rowcount includes only iterated rows due
rowtype.
rowtype:
1 - ignores collapsed children (they need not be selected),
2 - separates ranges per root pages,
3 = 1+2
coltype (since 11.0):
0 - separates ranges per column page and section,
1 - separates ranges per column section (left/mid/right),
2 - does not separate ranges horizontally.
upd 12.0 API method int
SelectRange
(TRow row1, string col1, TRow row2, string col2, bool select, int type, bool test = 0)
Selects rectangular range of cells, including given cells.
If
col1 and
col2 are null, selects all rows in range
row1 -
row2 including, if
row1 and
row2 are null
(since 12.0), selects all columns in range
col1 -
col2.
Otherwise it selects continuous range of cells between [
row1,
col1] [
row2,
col2].
If
row1 is null, it is the first selectable variable row, if
row2 is null, it is the last selectable variable row. If
col1 is null, it is the first selectable column, if
col2 is null, it is the last selectable column.
The first point [
row1,
col1] need
not be the top left point.
select = 0 - unselects range,
1 - selects range,
null (since 12.0) or
2 - unselects range if cell [
row1,
col1] is selected, otherwise selects the range.
type = bit array, &
1 - selects only visible rows, &
2 - ignores children of collapsed rows.
Since 12.0 returns count of affected rows or cells.
(since 12.0) for
test = 1 does not change anything, just return the count of rows or cells that would be affected.
new 11.0 upd 12.0 API method bool
SelectCell
(TRow row, string col, bool select, bool test = 0)
Selects or unselects one cell. Select the cell if
select = 1, unselects if
select = 0. If
select = null inverts the selection.
(Since 12.0) If set
test = 1, does not change cell selection, but returns if selection is possible.
Returns true if selection changed.
<Actions>
SelectCells
Not assigned to any event, can be assigned to OnDrag... events only
Starts selecting rectangular range of cells by mouse dragging. Fails if
Selecting or
SelectingCells is 0.
<Actions>
DeselectCells
Not assigned to any event, can be assigned to OnDrag... events only
Starts deselecting rectangular range of cells by mouse dragging. Fails if
Selecting or
SelectingCells is 0.
<Actions>
InvertCellsFirst
Assigned to OnCtrlDragRow event, can be assigned to OnDrag... events only
Starts selecting or deselecting rectangular range of cells by mouse dragging. Fails if
Selecting or
SelectingCells is 0.
If the actual cell is selected, starts deselecting, otherwise starts selecting.
<Actions>
SelectCell ...FAO
Assigned to OnCtrlClickCell event
Selects actual or focused cell. Fails if the cell is already selected, row cannot be selected or
Selecting or
SelectingCells is 0.
<Actions>
DeselectCell ...FAO
Assigned to OnCtrlClickCell event
Deselects actual or focused cell. Fails if the cell is already selected, row cannot be selected or
Selecting or
SelectingCells is 0.
To invert selection action use "SelectCell OR DeselectCell".
<Actions>
SelectCellRange
Not assigned to any event
Selects all cells in rectangular range between focused cell and actual cell. Fails if
Selecting or
SelectingCells is 0.
<Actions>
DeselectCellRange
Not assigned to any event
Deselects all cells in rectangular range between focused cell and actual cell. Fails if
Selecting or
SelectingCells is 0.
<Actions>
InvertCellRangeFirst
Assigned to OnShiftClickCell event
Selects or deselects all cells in rectangular range between focused cell and actual cell. Fails if
Selecting or
SelectingCells is 0.
If the focused cell is selected, deselects all, otherwise selects all.
new 12.0 <Actions>
SelectRowCells ...FARWO
Not assigned to any event
Selects all cells in actual or focused row. Fails if there is no cell to select.
new 12.0 <Actions>
DeselectRowCells ...FARWO
Not assigned to any event
Unselects all cells in actual or focused row. Fails if there is no cell to unselect.
new 12.0 <Actions>
SelectColCells ...FACWO
Not assigned to any event
Selects all cells in actual or focused column. Fails if there is no cell to select.
new 12.0 <Actions>
DeselectColCells ...FACWO
Not assigned to any event
Unselects all cells in actual or focused column. Fails if there is no cell to unselect.
new 12.0 <Actions>
SelectAllCells
Not assigned to any event
Selects all cells in grid.
new 12.0 <Actions>
DeselectAllCells
Not assigned to any event
Unselects all cells in grid.
Selecting columns
Selecting the whole columns
new 12.0 <Cfg> int
SelectingCols
[0]
If the whole columns can be selected. It does
not affect selecting individual cells in the columns, see
SelectingCells.
0 - no,
1 - yes and colored
(can be slow for large grids),
2 - yes, but not colored (changes only Panel Select button, if any).
new 7.1 upd 12 <C> int
CanSelect
[1/0]
If column and its cells can be selected.
0 | The column and its cells cannot be selected by any method. |
1 | The column and its cells can be selected. |
2 | (new 12.0) Only the whole column can be selected. |
3 | (new 12.0) Only the column individual cells can be selected. |
4 | (new 12.0) The column and its cells cannot be selected by any method, but the column cells are selected if the whole row is selected. |
Default value is
1 for all columns except Panel, ConstWidth and Index.
new 12.0 <C> bool
Selected
[0]
It is set to
1 when the whole column is selected. It is
not affected by individual selected cells in the column.
It is not used, when set SelectingCells = 1 or 2.
new 12.0 API method bool
SelectCol
(string col, bool select = null, bool test = 0)
Selects / unselects whole column if
SelectingCols = 1 and
SelectingCells = 0 or
3. Otherwise it selects or unselects all the column cells, if set
SelectingCells.
Selects the column if
select = 1, unselects if
select = 0 or changes the column selectiong if
select = null.
If set
test = 1, does not change anything, just test if the selecting is possible.
Returns true if selection changed.
new 12.0 API method string[ ]
GetSelCols
(string attr = null, bool first = null)
Returns all columns in grid with
Selected = 1.
If set
attr, returns only columns that have this attribute set, e.g. "CanDelete".
If set
first =
1, returns true if some column is selected, otherwise false.
If set
first =
0, returns true if some column is unselected, otherwise false.
The iterated columns are affected also by
ClearSelected setting.
new 12.0 API variable bool
AllColsSelected
If all columns are selected or unselected. Can be
1 for all columns selected,
0 for no column selected or
null for other states or unknown state.
Depends on
SelectAllType setting.
new 12 <Actions>
SelectCols
Not assigned to any event, can be assigned to OnDrag... events only
Starts selecting range of rows by mouse dragging. Fails if
Selecting is 0.
new 12 <Actions>
DeselectCols
Not assigned to any event, can be assigned to OnDrag... events only
Starts deselecting range rows by mouse dragging. Fails if
Selecting is 0.
new 12 <Actions>
InvertColsFirst
Assigned to OnCtrlDragRow event, can be assigned to OnDrag... events only
Starts selecting or deselecting range of rows by mouse dragging. Fails if
Selecting is 0.
If the actual row is selected (at least one cell), starts deselecting, otherwise starts selecting.
new 12 <Actions>
SelectOddCols
Not assigned to any event, can be assigned to OnDrag... events only
Starts selecting individual columns - every column under mouse cursor is selected. Fails if
Selecting is 0.
new 12 <Actions>
DeselectOddCols
Not assigned to any event, can be assigned to OnDrag... events only
Starts deselecting individual columns - every column under mouse cursor is deselected. Fails if
Selecting is 0.
new 12 <Actions>
InvertOddCols
Assigned to OnDragPanelColSelect event, can be assigned to OnDrag... events only
Starts inverting selection of individual columns - every column under mouse cursor changes its selection state. Fails if
Selecting is 0.
upd 12.0 <Actions>
SelectCol ...FACO
Not assigned to any event
Since 12.0 Selects the whole column if
SelectingCols = 1 and
SelectingCells = 0 or
3.
Otherwise
(or prior to 12.0) it selects all the column cells, if set
SelectingCells - like
SelectColCells.
upd 12.0 <Actions>
DeselectCol ...FACO
Not assigned to any event
Since 12.0 Unselects the whole column if
SelectingCols = 1 and
SelectingCells = 0 or
3.
Otherwise
(or prior to 12.0) it unselects all the column cells, if set
SelectingCells - like
SelectColCells.
<Actions>
SelectFocusedCols ...FACO
Not assigned to any event
Selects all focused columns. Fails if no columns is focused or
SelectingCols is 0.
<Actions>
DeselectFocusedCols ...FACO
Not assigned to any event
Deselects all focused columns. Fails if no columns is focused or
SelectingCols is 0.
<Actions>
InvertFocusedColsFirst ...FACO
Not assigned to any event
Selects or deselects all focused columns. Fails if no columns is focused or
SelectingCols is 0.
If the first focused columns is selected, deselects all, otherwise selects all.
new 12.0 <Actions>
SelectColRange
Not assigned to any event
Selects all columns between focused column and actual column, including both columns.
new 12.0 <Actions>
DeselectColRange
Not assigned to any event
Deselects all columns between focused column and actual column, including both columns.
new 12.0 <Actions>
InvertColRangeFirst
Not assigned to any event
Selects or deselects all columns between focused column and actual column, including both columns.
If the focused column is selected, deselects all, otherwise selects all.
new 12.0 <Actions>
SelectAllCols
Not assigned to any event
Selects all visible rows. Fails if all rows are selected or cannot be selected or
Selecting is 0.
new 12.0 <Actions>
DeselectAllCols
Not assigned to any event
Deselects all visible rows. Fails if no rows is selected or cannot be selected or
Selecting is 0.