TcxCustomComboBoxProperties.Sorted Property
Specifies if the editor sorts combo box items in alphabetical order.
Declaration
property Sorted: Boolean read; write; default False;
Property Value
Type | Default | Description |
---|---|---|
Boolean | False |
|
Remarks
Set the Sorted
property to True
to sort items available for selection. You can use the Items property to manage combo box items.
Code Example: Populate the Combo Box Menu from a Dataset Field
The code example in this section does the following:
- Assigns a TcxComboBox as an in-place editor to the Names column in a data-aware Data Grid View.
- Populates the editor’s drop-down window with all values from the underlying dataset field.
Tip
If you need to add a user input string as a new combo box item, handle the OnNewLookupDisplayText event.
Follow the steps below to test this code example in your RAD Studio IDE:
- Copy the DFM code snippet below.
- Create a new project in the IDE and focus an empty form.
- Press Ctrl+V to populate the form with preconfigured components.
- Create an empty OnCreate event handler for the form and paste the code example into the handler.
- Add the cxDropDownEdit unit to the uses clause and run the project.
object cxGrid1: TcxGrid
Left = 72
Top = 80
Width = 545
Height = 200
TabOrder = 0
object cxGrid1DBTableView1: TcxGridDBTableView
Navigator.Buttons.CustomButtons = <>
ScrollbarAnnotations.CustomAnnotations = <>
DataController.DataSource = DataSource1
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <>
DataController.Summary.SummaryGroups = <>
object cxGrid1DBTableView1RecId: TcxGridDBColumn
DataBinding.FieldName = 'RecId'
Visible = False
end
object cxGrid1DBTableView1Groups: TcxGridDBColumn
DataBinding.FieldName = 'Groups'
end
object cxGrid1DBTableView1Names: TcxGridDBColumn
DataBinding.FieldName = 'Names'
end
object cxGrid1DBTableView1Values: TcxGridDBColumn
DataBinding.FieldName = 'Values'
Width = 54
end
end
object cxGrid1Level1: TcxGridLevel
GridView = cxGrid1DBTableView1
end
end
object dxMemData1: TdxMemData
Active = True
Indexes = <>
Persistent.Data = {
5665728FC2F5285C8FFE3F04000000140000000100070047726F757073001400
0000010006004E616D657300040000000300070056616C756573000400000009
000600446174657300010600000047726F75703101050000004E616D6531010A
000000017B000B00010600000047726F75703101050000004E616D6532011400
000001CF0E0B00010600000047726F75703201050000004E616D6533011E0000
00017A210B00010600000047726F75703201050000004E616D65340128000000
01892B0B00}
SortOptions = []
Left = 520
Top = 88
object dxMemData1Groups: TStringField
FieldName = 'Groups'
end
object dxMemData1Names: TStringField
FieldName = 'Names'
end
object dxMemData1Values: TIntegerField
FieldName = 'Values'
end
object dxMemData1Dates: TDateField
FieldName = 'Dates'
end
end
object DataSource1: TDataSource
DataSet = dxMemData1
Left = 472
Top = 176
end
uses
cxDropDownEdit; // This unit declares the TcxComboBoxProperties class
// ...
procedure TMyForm.FormCreate(Sender: TObject);
var
AProperties: TcxComboBoxProperties;
begin
cxGrid1DBTableView1Names.PropertiesClass := TcxComboBoxProperties;
AProperties := cxGrid1DBTableView1Names.Properties as TcxComboBoxProperties;
AProperties.Sorted := True;
dxMemData1.DisableControls;
try
dxMemData1.First;
while not dxMemData1.Eof do
begin
AProperties.Items.Add(dxMemData1.FieldByName('Names').AsString);
dxMemData1.Next;
end;
dxMemData1.First;
finally
dxMemData1.EnableControls;
end;
end;
Default Value
The Sorted
property’s default value is False
.
See Also