Вы находитесь на странице: 1из 17

Content

If you need to display custom information within a group footer panel, handle the OnCustomDrawPartBackground event. If this event is not handled, group footer panels display the group summaries specified. Please refer to the Summaries topic for additional information.

Layout

A group footer panels height depends on the style (font settings, in particular) assigned. If the Views OptionsView.FooterAutoHeight option is enabled group footer panels are automatically enlarged vertically when a summary value's text doesnt fit into the footer cells.

Page 784 of 3432

Group Row

See Also

Group rows appear when grouping is applied to a View. Each group row corresponds to a value in a field by whose values the View is grouped. Group rows can be expanded/collapsed to show/hide data rows that correspond to a particular grouping value.

data rows that correspond to a particular grouping value. Feature Related Members Appearance The common

Feature

Related Members

Appearance

The common style for all group rows is set via a Views Styles.Group property. You can also provide styles for individual group rows (e.g. rows corresponding to a particular grouping level) by handling the Views Styles.OnGetGroupStyle event. Note that both the property and the event affect both the group row and the corresponding row level indent.

The background bitmap for group rows can be set via the Views BackgroundBitmaps.Group property.

Custom Draw

The Views OnCustomDrawGroupCell event. Note that this event doesnt affect row level indents.

Content

By default, group rows display the corresponding columns caption, its value and the specified group summaries. You can specify any custom text to display within group rows by handling the corresponding custom draw event or substitute only the text representing the columns value using the OnGetDisplayText event.

Layout

The Views OptionsView.GroupRowStyle and OptionsView.GroupRowHeight properties.

Page 785 of 3432

Group Row Popup Menu

See Also

This menu represents a built-in menu available in the cxGridPopupMenu component.

built-in menu available in the cxGridPopupMenu component. This menu is invoked when right-clicking a group row

This menu is invoked when right-clicking a group row. Group rows can be sorted:

by group values (the default option); by group summary values. In this instance, each menu caption represents the display text.

Feature

Related Members

Visibility

The UseBuiltInPopupMenus property of the cxGridPopupMenu component.

Content

All constants for default built-in menu captions are stored in the cxGridPopUpMenuConsts unit. Refer to the corresponding section in the cxGridPopupMenu: Resource Strings topic for detailed information on constants used in the Group Row Popup Menu. Use the summary objects VisibleForCustomization and DisplayText properties to control the general appearance of these menu items and to specify their captions.

Refer to the Managing Grid Menus topic, for detailed information and sample code on how to add custom menu items to built-in popup menus.

Page 786 of 3432

Indicator

If enabled, the indicator is displayed at the left of a grid View. The indicator is divided into cells which correspond to the band header panel, column header panel, rows (this area is called the row indicator) and the footer panel. The cells corresponding to the band header panel and column header panel can contain the Quick Column Customization button and Quick Band Customization button, respectively. The cells that correspond to rows display the corresponding rows state. Additionally, indicator cells corresponding to rows can be used to expand/collapse master and group rows and their edges can be used to resize rows, if allowed.

rows and their edges can be used to resize rows, if allowed. Feature Related Members Visibility

Feature

Related Members

Visibility

The Views OptionsView.Indicator property.

Appearance

The indicators look and feel depends on the grid controls LookAndFeel property settings. The style and background bitmap can be changed using the Views Styles.Indicator and BackgroundBitmaps.Indicator properties.

Custom Draw

Handle the Views OnCustomDrawIndicatorCell event. The events AViewInfo parameter can be of the TcxGridIndicatorHeaderItemViewInfo, TcxGridIndicatorRowItemViewInfo or TcxGridIndicatorFooterItemViewInfo type depending on which indicator cell is about to be painted.

Layout

The indicators width can be changed using the Views OptionsView.IndicatorWidth property.

Page 787 of 3432

Quick Column Customization Button

The Quick Column Customization button is displayed at the intersection of the column header panel and the indicator. Clicking this button invokes the Quick Column Customization dropdown, which displays column names in a checklist. Users are able to toggle columnsvisibility and reorder columns by dragging items in the dropdown. Multiple items can be selected by clicking them while holding down the Shift and Ctrl keys.

them while holding down the Shift and Ctrl keys. Feature Related Members Availability The View ’

Feature

Related Members

Availability

The Views OptionsCustomize.ColumnsQuickCustomization property. Note that setting this property to True results in enabling the indicator.

Appearance

The Quick Column Customization button is an indicator cell. Please refer to the Indicator topic for information on customizing indicator cellsappearance.

Behavior

The Quick Column Customization dropdown allows users to:

change the visible state of columns without using the Customization Form at runtime or the Object Inspector at design time;

reorder columns in a View by dragging their names in the dropdown. This functionality is enabled in a View when the Views OptionsCustomize.ColumnsQuickCustomizationReordering property is set to True.

Dropdown Lists

The dropdown list displays all columns whose VisibleForCustomization property value is False.

Content

Dropdown Lists

You can constrain the dropdowns height using the Views OptionsCustomize.ColumnsQuickCustomizationMaxDropDownCount property.

Layout

Page 788 of 3432

Items in Chart Views

See Also

For the ExpressQuantumGrid the term "item" is used to describe a column in a data store. In a Chart View, items stand for the columns that correspond to series, data groups, and the default categories. When series values are grouped at a data level associated with the visible data group, the unique values of this data group determine the categories which series values are arranged into. Otherwise, the values of the default categories are used to categorize series values. Each record in a data store corresponds to a category value and at least one series value.

to a category value and at least one series value. The arrangement options of the items

The arrangement options of the items differ from diagram to diagram since each one provides options for visually representing category values and series values which are specific to the type of diagram. The only thing you need to address to change the manner in which the items are displayed within a Chart View is to activate another diagram (by setting its Active property to True).

As with items in tabular and Card Views, series, data groups, and the default categories can be divided into two groups: data- aware and non data-aware. Data-aware items (TcxGridDBChartSeries, TcxGridDBChartDataGroup, and TcxGridDBChartCategories) are used in the corresponding data-aware View (TcxGridDBChartView). Non data-aware items (TcxGridChartSeries, TcxGridChartDataGroup, and TcxGridChartCategories) are elements of the non data-aware View (TcxGridChartView).

A Chart View has the Series, DataGroups, and Categories properties which maintain the collections of items (series, data groups,

and the default categories, respectively) created within the View. To access the series and data groups which are currently visible

within a Chart View, use the Views VisibleSeries and VisibleDataGroups properties.

The Component Editor allows you to access all the series and data groups in a Chart View and create/delete them at design time. You can use the CreateSeries and CreateDataGroup methods to manually create series and data groups at runtime.

It's possible to get and set the value of an item using either the Values collection of the default categories or the Values collection

of a series and data group. Alternatively, you can use the Views ViewData.Categories, ViewData.Values, and

ViewData.GroupValues indexed collections, which address the same values . To access values of the items which are currently displayed, use the Views ViewData.VisibleCategories, ViewData.VisibleValues, and ViewData.VisibleGroupValues, respectively.

To add a series value, call the AddValue method of the corresponding series.

Every item has a DataBinding property which links items to the data in a Views data controller which retrieves data from and posts it back to a data store. Data-aware items redefine DataBinding to work with TDataSet fields. To sort data by an item, you should use its SortOrder property.

Note: The sorting applied to the series takes priority over the sorting by the default categories or a data group. Only a single type

of sorting (either by the default categories/data group or series values) is active at a time within the chart. The series whose values

are sorted can be accessed via the Views SortedSeries property. End-users are able to customize the sorting applied to the series using the Customization Form.

Page 789 of 3432

Items in Table and Card Views

See Also

For the ExpressQuantumGrid the term "item" is used to describe a column in a data store. In a Table View, items stand for columns and are displayed across the View.

items stand for columns and are displayed across the View. In a Card View, items are

In a Card View, items are Card View rows and are arranged vertically.

View, items are Card View rows and are arranged vertically. The TcxCustomGridTableItem class is the base

The TcxCustomGridTableItem class is the base class for all table items in Card Views.

class is the base class for all table items in Card Views. All items can be

All items can be divided into two main groups: data-aware and non data-aware. Data-aware items (TcxGridDBColumn, TcxGridDBBandedColumn, TcxGridDBCardViewRow) are used in corresponding data-aware Views (TcxGridDBTableView, TcxGridDBBandedTableView, TcxGridDBCardView). Non data-aware items are elements of non data-aware Views (TcxGridTableView, TcxGridBandedTableView, TcxGridCardView). Every View has an Items property that maintains the collection of items created within each View. You can use the CreateItem method (CreateColumn or CreateRow in some Views) to create items manually. In a non data-aware View, you can create items using the Layout and Data Editor at design time. In a data-aware View, you can call the DataController.CreateAllItems method to create columns based on dataset fields. The Component Editor allows you to access all items in a View and

Page 790 of 3432

create/delete them at design time. It is possible to get and set a value for an item cell in a focused record via the EditValue member. The data controller gives you the ability to access the item values of all loaded records.

An item has various attributes controlling its behavior. For instance, you can prevent a user from editing, focusing item cells, changing the item's position within the "group by" or column header panel, applying sorting or filtering by an item, etc. Every item has a DataBinding property providing data for items from a Views data controller. DataBinding retrieves data from and posts it back to a data store. Data-aware items redefine DataBinding to work with TDataSet fields.

The ExpressQuantumGrid provides a wide range of in-place editors to edit or display item cells. For instance, the TcxCheckBox editor provides a convenient way to edit Boolean fields. By default, items are assigned default editors as appropriate. In bound mode, the default editor is specified by the field type. For instance, TcxDateEdit is used to edit TDateField fields. See the FieldName topic for details. In unbound mode, the default editor is determined by an items DataBinding.ValueTypeClass property. You must specify an appropriate value type to provide the appropriate behavior when sorting, editing, validating and accessing item values. Refer to the TcxValueType class to learn more about the default editors assigned in unbound mode.

To assign an editor to an item, you can use either the repository (repository and repository items ) or the PropertiesClass object. A repository item defines the specific editor settings used for a particular item editor. A single repository item can be assigned to the RepositoryItem property of several items, thus creating items with the same edit behavior. PropertiesClass is another way to set an item editor. It defines the class of editor properties used to create a specific editor. If both RepositoryItem and PropertiesClass are assigned, the item editor is determined by a corresponding repository item. The ExpressQuantumGrid gives you the ability to specify different editors for individual item cells (i.e. on a row by row basis). You can handle the OnGetProperties event and specify the editor based on the record's position or the data associated with it. For more information refer to the Data Editing Using Inplace Editors topic.

The GroupIndex property of an item allows you to group data within a View by this item. Grouping operations are implemented only in Table Views and are not supported in Card Views. You can group data by multiple items. The grid control provides the "group by" panel to which a user can easily drag a column by its caption to group by this column.

To sort data by an item, you should use the SortOrder property. You can sort by multiple items by setting the SortOrder property of these items to a value other than soNone. Data in a View is sorted in the exact SortOrder sequence. At runtime, a user can sort data by clicking a column's caption. A small arrow specifies the current sort order. The up-arrow indicates that data is sorted in ascending order, while the down-arrow indicates that sorting is performed in descending order.

Data filtering within a View is implemented via a data controller. It provides a Filter property which specifies the filter conditions set for all the items in a specific View. A filter condition addresses the item, the operator type and the value with which every item cell is compared. When filtering is applied, only the records matching the filter criteria are displayed within the View. At runtime, a user can press the filter down-arrow button in a Table View to filter by that column.

View. At runtime, a user can press the filter down-arrow button in a Table View to

Page 791 of 3432

When a user selects a value from this list, a new EQUAL filter condition (of type "Column = Value") is added to the existing filter criteria. Selecting All from the list clears the filter condition set for the column. The Custom item displays a filter dialog that allows an end- user to define filter conditions with other operators (=, <>, <, <=, >, >=, LIKE and NOT LIKE). For more information on filter dialogs, refer to the Runtime Filtering section.

Our grid control gives you the ability to temporarily remove column(s) from a View. At runtime, a user can drag individual columns onto the Customization form thus hiding them in the View.

onto the Customization form thus hiding them in the View. To display a column within the

To display a column within the View again, the user must drag this column from the customization form onto the column header or "group by" panel. Dragging a column onto the Customization form results in setting its Visible property to False . It is possible to prevent a column from appearing in this form by setting its VisibleForCustomization property to True . In this case, if your column is dragged to the Customization form, it disappears completely and can only be made visible programmatically.

Page 792 of 3432

TcxCustomExtLookupComboBox Object

Hierarchy Properties Methods Events See Also

Represents the base class for lookup editors displaying a grid View in the dropdown window.

Unit

cxDBExtLookupComboBox

TcxCustomExtLookupComboBox = class(TcxCustomDBLookupEdit);

Description The TcxCustomExtLookupComboBox editor is the ancestor for lookup editors (TcxExtLookupComboBox and TcxDBExtLookupComboBox ) which display grid Views within their dropdown windows. To specify the View for the editor, see its Properties.View attribute. Only data-aware table and Banded Table Views can be used for this purpose. A View repository component represented by the TcxGridViewRepository class helps you to create and customize Views. Note:

you must not reuse the same View in your grid control and ExtLookupEditor.

Lookup editors are designed to edit values "indirectly" by picking up a record from the dropdown View. When you select a specific record from the View, this action changes the display text (the Text property) and the edit value (the EditValue property) obtained from the selected record. The edit value is determined by the records Properties.KeyFieldNames field. Moreover, the edit value matches this field value. That is when you modify the EditValue property, the record with the key field matching the edit value is focused and the display text of ExtLookupEditor is changed. You can specify more than one field in the KeyFieldNames property, in this case the edit value contains an array of variant values. The display text is obtained from the Properties.ListFieldItem column of the selected record. You cannot modify the text in the edit box. It only helps you to identify the selected record visually. Data-aware lookup editors are used to edit values from one dataset by selecting a record from another dataset (displayed by the View). The field being edited by a TcxDBExtLookupComboBox control is specified by the editors DataBinding.DataField property. The edit value matches the value of the field being edited.

To make a lookup editor work properly, you need to:

1. Assign a View to the Properties.View property

2. Select a View column (the Properties.ListFieldItem property) whose data will be displayed within the edit box of ExtLookupEditor

3. For the data-aware ExtLookupEditor, specify the field being edited via the DataBinding.DataField property. This field must match the Properties.KeyFieldNames property.

4. Specify the key field name(s) via the Properties.KeyFieldNames property to identify records within the dropdown View.

Page 793 of 3432

TcxDBExtLookupComboBox Object Hierarchy Properties Methods Events See Also Represents a control to edit a dataset

TcxDBExtLookupComboBox Object

Hierarchy Properties Methods Events See Also

Represents a control to edit a dataset field by picking up a record in its dropdown data-aware View.

Unit

cxDBExtLookupComboBox

TcxDBExtLookupComboBox = class(TcxCustomExtLookupComboBox);

Description The TcxDBExtLookupComboBox control allows you to edit a dataset field referenced by the DataBinding.DataField property indirectly. You are not able to type the text to change the edit value. Instead, you change the edit value by picking up a record from the dropdown View. The Views selected record provides values for the display text (drawn in the edit box) and the edit value of TcxDBExtLookupComboBox.

edit box) and the edit value of TcxDBExtLookupComboBox . The edit value is determined by the

The edit value is determined by the records Properties.KeyFieldNames field. Moreover, the edit value matches this field value. That is when you modify the EditValue property, the record with the key field matching the edit value is selected and the display text of ExtLookupEditor is changed. The field (the DataBinding.DataField property) being edited by a TcxDBExtLookupComboBox control matches the edit value, i.e. it matches the value of the selected records Properties.KeyFieldNames field.

The editors display text is obtained from the Properties.ListFieldItem column of the selected record. You cannot modify the text in the edit box. It only helps you to identify the selected record visually.

To assign the View to an ExtLookupEditor, see its Properties.View attribute. It is possible to use only a data-aware (Banded) Table View for this purpose. A View repository component represented by the TcxGridViewRepository class helps you to create and customize Views. Note: you must not employ the same View in your grid control and ExtLookupEditor.

To know more about adjusting ExtLooupEditors, refer to the TcxCustomExtLookupComboBox class description.

Page 794 of 3432

TcxEditRepositoryExtLookupComboBoxItem Object

Hierarchy Properties Methods See Also

Represents a repository item containing settings for a TcxExtLookupComboBox editor.

Unit

cxDBExtLookupComboBox

TcxEditRepositoryExtLookupComboBoxItem = class(TcxEditRepositoryItem);

Description TcxEditRepositoryExtLookupComboBoxItem stores properties specific to a TcxExtLookupComboBox editor via the Properties object. A repository object of the TcxEditRepository class maintains a collection of repository items.

Page 795 of 3432

TcxExtLookupComboBox Object Hierarchy Properties Methods Events See Also Represents a lookup editor displaying a grid

TcxExtLookupComboBox Object

Hierarchy Properties Methods Events See Also

Represents a lookup editor displaying a grid View in its dropdown window.

Unit

cxDBExtLookupComboBox

TcxExtLookupComboBox = class(TcxCustomExtLookupComboBox);

Description

A TcxExtLookupComboBox control displays a data-aware grid View in its dropdown window which is specified by the

Properties.View attribute. Similar to other Express Editors, you have to use the attributes of the Properties object to customize an

ExtLookupEditor.

of the Properties object to customize an ExtLookupEditor. A TcxExtLookupComboBox control allows you to edit values

A TcxExtLookupComboBox control allows you to edit values indirectly. You are not able to type the text to change the edit

value. Instead, you change the edit value by picking up a record from the dropdown View. The Views selected record provides values for the display text (drawn in the edit box) and the edit value of TcxDBExtLookupComboBox.

You cannot modify the text (display value) in the edit box. It is used for display purpose only to identify the record being currently selected. The edit value of an ExtLookupEditor matches a value of the Properties.KeyFieldNames field of the currently selected record. When you select a specific record within the dropdown View, the controls edit value is automatically changed. It always holds a value of the records Properties.KeyFieldNames field. To access the edit value, see the published EditValue property. It is possible

to specify several key field names by separating them with the semicolon. In this case, EditValue will contain an array of variants.

Changing EditValue automatically selects another record in the dropdown View whose key field values are equal to a new edit value(s). To assign the View to an ExtLookupEditor, see its Properties.View attribute. It is possible to use only a data-aware (Banded) Table View for this purpose. A View repository component represented by the TcxGridViewRepository class helps you to create and customize Views. Note: you must not reuse the same View in your grid control and the ExtLookupEditor.

To get more information on customizing ExtLookupEditors, refer to the TcxCustomExtLookupComboBox topic.

Page 796 of 3432

TcxExtLookupComboBoxProperties Object

Hierarchy Properties Methods Events See Also

Contains settings for ExtLookupEditors.

Unit

cxDBExtLookupComboBox

TcxExtLookupComboBoxProperties = class(TcxCustomDBLookupEditProperties);

Description The TcxExtLookupComboBoxProperties class contains a set of attributes controlling the behavior of ExtLookupEditors (TcxExtLookupComboBox and TcxDBExtLookupComboBox). An ExtLookupEditor displays a data-aware (Banded) Table View within its dropdown window specified by the View property. Selecting a specific record in this View changes the display text and edit value(s) of the editor. The display text is obtained from the ListFieldItem column of the selected record. The edit value(s) is determined by a selected records field(s) set via the KeyFieldNames property. You can use the FocusPopup property to enable/disable editing data within the dropdown View. If FocusPopup is set to True , a user has the full-function grid View in the dropdown (editing, filtering is enabled). Otherwise, a user is not able to edit and filter data; only sorting and grouping are supported.

Page 797 of 3432

TcxCustomExtLookupComboBox.ActiveProperties

TcxCustomExtLookupComboBox See Also

Obtains the properties that are currently applied to a lookup editor.

property ActiveProperties: TcxExtLookupComboBoxProperties;

Description Use the ActiveProperties property to obtain the properties of the current lookup editor that are currently in effect. This property is especially useful when the lookup editor has a repository item assigned to it via the RepositoryItem property. In this case the ActiveProperties property returns the properties of the corresponding repository item that are active while the item is assigned to the lookup editor. Otherwise, the inherent lookup editors properties are returned.

ReadOnly Property

Page 798 of 3432

TcxCustomExtLookupComboBox.EditValue

TcxCustomExtLookupComboBox See Also

Specifies the value or an array of values edited by ExtLookupEditor.

property EditValue: Variant;

Description ExtLookupComboBox allows you to edit a value(s) indirectly by picking up a record from the dropdown View. The EditValue property represents a value(s) being edited. It always matches a value(s) of a specific field(s) set via the Properties.KeyFieldNames property obtained from the Views selected record. If the KeyFieldNames property specifies more than one field names, EditValue represents an array of variant values. Setting focus to a specific record within the View changes the EditValue property and the text displayed in the edit box. For TcxDBExtLookupComboBox editors, changing EditValue modifies the value of the dataset field to which the editor is connected via the DataBinding.DataField attribute. The value displayed within the ExtLookupEditor is addressed by the Properties.ListFieldItem View column.

Page 799 of 3432

TcxCustomExtLookupComboBox.Properties

TcxCustomExtLookupComboBox

Contains settings affecting the behavior of a ExtLookupEditor.

property Properties: TcxExtLookupComboBoxProperties;

Description Use attributes of the Properties object to adjust settings of ExtLookupEditor. The main attributes are:

the View property

Represents the View displayed within the dropdown window of ExtLookupEditor

the KeyFieldNames property

Specifies one or more fields matching the edit value(s). See the EditValue property to get the edit value(s). If the KeyFieldNames property specifies several field names delimited by the semicolon, the EditValue property holds an array of variants (values from the currently selected record in the dropdown View). For data-aware ExtLookupEditors (TcxDBExtLookupComboBox), the KeyFieldNames property must correspond to the field being edited by ExtLookupComboBox. This field is set via the DataBinding.DataField property

the ListFieldItem property

This property is used to specify the column in the dropdown View whose value is displayed in the edit box. It is obtained from the current record.

Page 800 of 3432