EhLib.Com https://forum.ehlib.com/en/ |
|
How to change the data group GroupLevels field by coding https://forum.ehlib.com/en/viewtopic.php?f=5&t=1210 |
Page 1 of 1 |
Author: | ituneksa [ 01 Apr 2023, 22:11 ] | ||
Post subject: | How to change the data group GroupLevels field by coding | ||
Hi How to set the data group GroupLevels for one field (company) and for two fields (company & ShipVIA) by coding Best Regards
|
Author: | ituneksa [ 03 Apr 2023, 11:59 ] |
Post subject: | Re: How to change the data group GroupLevels field by coding |
Solution found in : viewtopic.php?f=5&t=633#p1402 |
Author: | EhLibSupport [ 05 Apr 2023, 15:29 ] |
Post subject: | Re: How to change the data group GroupLevels field by coding |
Hello Here are some examples of working with groups at runtime. In the last example grouping by two fields. Code: //Activate DataGrouping
procedure TForm1.Button1Click(Sender: TObject); begin DBGridEh1.DataGrouping.Active := True; DBGridEh1.DataGrouping.GroupPanelVisible := True; end; //Add GroupLevel for 'Continent' Field procedure TForm1.Button2Click(Sender: TObject); var gl: TGridDataGroupLevelEh; begin gl := DBGridEh1.DataGrouping.GroupLevels.Add(); gl.Column := DBGridEh1.FieldColumns['Continent']; //Expand all nodes of the First Level DBGridEh1.DataGrouping.GroupLevels[0].ExpandNodes; end; //Delete first GroupLevel procedure TForm1.Button3Click(Sender: TObject); begin if (DBGridEh1.DataGrouping.GroupLevels.Count > 0) then DBGridEh1.DataGrouping.GroupLevels.Delete(0); end; //Replace Field for the first GroupLevel procedure TForm1.Button4Click(Sender: TObject); begin if DBGridEh1.DataGrouping.GroupLevels.Count = 0 then Exit; if (TColumnEh(DBGridEh1.DataGrouping.GroupLevels[0].Column).FieldName = 'Continent') then DBGridEh1.DataGrouping.GroupLevels[0].Column := DBGridEh1.FieldColumns['Capital'] else DBGridEh1.DataGrouping.GroupLevels[0].Column := DBGridEh1.FieldColumns['Continent']; //Expand all nodes of the First Level DBGridEh1.DataGrouping.GroupLevels[0].ExpandNodes; end; //Add several GroupLevels procedure TForm1.Button5Click(Sender: TObject); begin DBGridEh1.DataGrouping.GroupLevels.BeginUpdate; DBGridEh1.DataGrouping.GroupLevels.Clear; DBGridEh1.DataGrouping.GroupLevels.Add().Column := DBGridEh1.FieldColumns['Continent']; DBGridEh1.DataGrouping.GroupLevels.Add().Column := DBGridEh1.FieldColumns['Capital']; DBGridEh1.DataGrouping.GroupLevels.EndUpdate; //Expand all nodes of the First Level DBGridEh1.DataGrouping.GroupLevels[0].ExpandNodes; end; |
Page 1 of 1 | All times are UTC |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |