91
|
Defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries (ditto mark)

with AxCascadeTree1 do
begin
BeginUpdate();
with View do
begin
BeginUpdate();
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exRowLines;
ColumnAutoResize := True;
(Columns.Add('Country') as EXCASCADETREELib.Column).ShowIdem := '<fgcolor gray>〃';
with Items do
begin
AddItem('Spain');
AddItem('Spain');
AddItem('Spain');
AddItem('Spain');
AddItem('Germany');
AddItem('Germany');
AddItem('Germany');
AddItem('Germany');
end;
EndUpdate();
end;
EndUpdate();
end
|
90
|
Defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries (space)

with AxCascadeTree1 do
begin
BeginUpdate();
with View do
begin
BeginUpdate();
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exRowLines;
ColumnAutoResize := True;
(Columns.Add('Country') as EXCASCADETREELib.Column).ShowIdem := ' ';
with Items do
begin
AddItem('Spain');
AddItem('Spain');
AddItem('Spain');
AddItem('Spain');
AddItem('Germany');
AddItem('Germany');
AddItem('Germany');
AddItem('Germany');
end;
EndUpdate();
end;
EndUpdate();
end
|
89
|
How can I replace or add an icon at runtime

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
EnsureVisibleColumn('Function');
with Columns.Item['Function'] do
begin
end;
Columns.Item[TObject(0)].Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
ImageSize := 16;
ReplaceIcon('gAAAABgYACEHgUJFEEAAWhUJCEJEEJggEhMCYEXjUbjkJQECj8gj8hAEjkshYEpk8kf8ClsulsvAExmcvf83js5nU7nkCeEcn8boMaocXosCB9Hn09pkzcEuoL/fE+Ok' +
'YB0gB9YhIHrddgVcr9aktZADAD8+P8CgIA==',Nil);
ReplaceIcon('C:\images\favicon.ico',TObject(0));
with VisualAppearance do
begin
Add(4,'gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL' +
'UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBU' +
'rGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3' +
'NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsY' +
'YDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVm' +
'WCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVo' +
'WiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiS' +
'e41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhF' +
'CcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==');
end;
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorHeader := $4c6c6c6;
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $4000000;
SelForeColor := Color.FromArgb(0,0,1);
set_Background(EXCASCADETREELib.BackgroundPartEnum($14),SelBackColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($15),SelForeColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($8 Or Integer(EXCASCADETREELib.BackgroundPartEnum.exSplitBar)),BackColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($9 Or Integer(EXCASCADETREELib.BackgroundPartEnum.exSplitBar)),ForeColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($20),$ffffffff);
set_Background(EXCASCADETREELib.BackgroundPartEnum($0),$4000000);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHeaderFilterBarActive,$4010101);
set_Background(EXCASCADETREELib.BackgroundPartEnum($1),$40000ff);
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
BackColorSortBar := BackColor;
BackColorLevelHeader := BackColor;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\MN';
EndUpdate();
end
|
88
|
Can I set a filter that automatically adds a * before and after the word, so the user can just search for 'cat' and it becomes '*cat*' automatically
with AxCascadeTree1 do
begin
with View do
begin
BeginUpdate();
ColumnAutoResize := True;
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
LinesAtRoot := EXCASCADETREELib.LinesAtRootEnum.exLinesAtRoot;
Columns.Clear();
with (Columns.Add('Items') as EXCASCADETREELib.Column) do
begin
DisplayFilterButton := True;
DisplayFilterPattern := True;
Def[EXCASCADETREELib.DefColumnEnum.exFilterPatternTemplate] := '*<%filter%>*';
FilterType := EXCASCADETREELib.FilterTypeEnum.exPattern;
Filter := '1';
end;
with Items do
begin
h := AddItem('Root 1');
InsertItem(h,Nil,'Child 1');
InsertItem(h,Nil,'Child 2');
ExpandItem[h] := True;
h := AddItem('Root 2');
InsertItem(h,Nil,'Child 1');
InsertItem(h,Nil,'Child 2');
end;
ApplyFilter();
EndUpdate();
end;
end
|
87
|
Highlight the leaf items

with AxCascadeTree1 do
begin
with View do
begin
BeginUpdate();
ConditionalFormats.Add('%CC0=0',Nil).ForeColor := $808080;
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
LinesAtRoot := EXCASCADETREELib.LinesAtRootEnum.exLinesAtRoot;
with Columns do
begin
(Add('Item') as EXCASCADETREELib.Column).Width := 16;
Add('Desc');
end;
with Items do
begin
hR := AddItem('Root');
CellValue[TObject(hR),TObject(1)] := 'The root directory /';
h := InsertItem(hR,Nil,'Home');
CellValue[TObject(h),TObject(1)] := 'The home directory with user directories Alice and Bob';
InsertItem(h,Nil,'Alice');
InsertItem(h,Nil,'Bob');
ExpandItem[h] := True;
h := InsertItem(hR,Nil,'Etc');
CellValue[TObject(h),TObject(1)] := 'The etc directory with one configuration file';
h := InsertItem(h,Nil,'nginx.conf');
CellValue[TObject(InsertItem(hR,Nil,'Var')),TObject(1)] := 'The var directory';
ExpandItem[hR] := True;
end;
EndUpdate();
end;
end
|
86
|
Highlight the parent items

with AxCascadeTree1 do
begin
with View do
begin
BeginUpdate();
ConditionalFormats.Add('%CC0',Nil).ForeColor := $ff;
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
LinesAtRoot := EXCASCADETREELib.LinesAtRootEnum.exLinesAtRoot;
with Columns do
begin
(Add('Item') as EXCASCADETREELib.Column).Width := 16;
Add('Desc');
end;
with Items do
begin
hR := AddItem('Root');
CellValue[TObject(hR),TObject(1)] := 'The root directory /';
h := InsertItem(hR,Nil,'Home');
CellValue[TObject(h),TObject(1)] := 'The home directory with user directories Alice and Bob';
InsertItem(h,Nil,'Alice');
InsertItem(h,Nil,'Bob');
ExpandItem[h] := True;
h := InsertItem(hR,Nil,'Etc');
CellValue[TObject(h),TObject(1)] := 'The etc directory with one configuration file';
h := InsertItem(h,Nil,'nginx.conf');
CellValue[TObject(InsertItem(hR,Nil,'Var')),TObject(1)] := 'The var directory';
ExpandItem[hR] := True;
end;
EndUpdate();
end;
end
|
85
|
Highlight the item being expanded or collapsed

with AxCascadeTree1 do
begin
with View do
begin
BeginUpdate();
ConditionalFormats.Add('%CX0',Nil).Bold := True;
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
LinesAtRoot := EXCASCADETREELib.LinesAtRootEnum.exLinesAtRoot;
with Columns do
begin
(Add('Item') as EXCASCADETREELib.Column).Width := 16;
Add('Desc');
end;
with Items do
begin
hR := AddItem('Root');
CellValue[TObject(hR),TObject(1)] := 'The root directory /';
h := InsertItem(hR,Nil,'Home');
CellValue[TObject(h),TObject(1)] := 'The home directory with user directories Alice and Bob';
InsertItem(h,Nil,'Alice');
InsertItem(h,Nil,'Bob');
ExpandItem[h] := True;
h := InsertItem(hR,Nil,'Etc');
CellValue[TObject(h),TObject(1)] := 'The etc directory with one configuration file';
h := InsertItem(h,Nil,'nginx.conf');
CellValue[TObject(InsertItem(hR,Nil,'Var')),TObject(1)] := 'The var directory';
ExpandItem[hR] := True;
end;
EndUpdate();
end;
end
|
84
|
Are there any properties to set text margins at tooltip, like Margins="5,5" (method 1). Margins is used to get some space between text and the tooltips border

// MouseMove event - Occurs when the user moves the mouse.
procedure TWinForm1.AxCascadeTree1_MouseMoveEvent(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_MouseMoveEvent);
begin
with AxCascadeTree1 do
begin
ShowToolTip('new content','',Nil,'+8','+8');
end
end;
with AxCascadeTree1 do
begin
ToolTipMargin := '16,8';
end
|
83
|
Force hover-all feature
with AxCascadeTree1 do
begin
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollHoverAll,$ffffffff);
end
|
82
|
Disable hover-all feature (Windows 11 or greater)
with AxCascadeTree1 do
begin
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollHoverAll,$1);
end
|
81
|
Display a custom tooltip

// MouseMove event - Occurs when the user moves the mouse.
procedure TWinForm1.AxCascadeTree1_MouseMoveEvent(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_MouseMoveEvent);
begin
with AxCascadeTree1 do
begin
ShowToolTip('new content','',Nil,'+8','+8');
end
end;
|
80
|
Shows the tooltip of the object moved relative to its default position

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
bSingle := FormatABC('value > 0 ? 0 : -1',View.Index,Nil,Nil);
bColumnAutoResize := FormatABC('value = `City` ? 0 : -1',View.Tag,Nil,Nil);
with View do
begin
ColumnAutoResize := False;
SingleSel := False;
end;
end
end;
// MouseMove event - Occurs when the user moves the mouse.
procedure TWinForm1.AxCascadeTree1_MouseMoveEvent(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_MouseMoveEvent);
begin
with AxCascadeTree1 do
begin
ShowToolTip('<null>','<null>',Nil,'+8','+8');
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := Integer(EXCASCADETREELib.CascadeModeEnum.exAutoFitOnResizeClient) Or Integer(EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
EndUpdate();
end
|
79
|
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Items.ItemHeight(0) = View.DefaultItemHeight
// FilterBarFont.Size = Me.Font.Size
// ToolTipFont.Size = Me.Font.Size
with AxCascadeTree1 do
begin
with View do
begin
DefaultItemHeight := 36;
HeaderHeight := DefaultItemHeight;
SortBarHeight := DefaultItemHeight;
Indent := 26;
CheckImage[EXCASCADETREELib.CheckStateEnum.Unchecked] := 16777216;
CheckImage[EXCASCADETREELib.CheckStateEnum.Checked] := 33554432;
CheckImage[EXCASCADETREELib.CheckStateEnum.PartialChecked] := 50331648;
EnsureVisibleColumn('Function');
with Columns.Item['Function'] do
begin
end;
Columns.Item[TObject(0)].Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
ImageSize := 32;
Font.Size := 16;
Images('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');
with VisualAppearance do
begin
Add(1,'gBFLBCJwBAEHhEJAAEhABfICg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj6' +
'CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7EM' +
'RwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsOatVqjG5sYjcGC3La9cz3Pq/bpuDCbMxuaK1TrYXr1TTrcofBDldAxXRKDxR' +
'DWVhLnYOw9i6XxzjuXprCaOoKB6EwbiCZZCGOdZYlcT4xHmbhMnwNxtn+G5bmqdZ7n4Pw/i+X5zm+dQ9g4CAFjsfAJheOI8HsDoWDWTB/lwSAQkmA5PEgRYoDyDwYFYF' +
'oFmGCBmBqBphDgRJ0gOTIYBGRB/lyRh0iSCZbjYWJzgWDwIjYLoLmMCJGDKDJjBgWgqG6YhyhGHRzA2aJ1mCABOAiOJvhCZBJBYRoRmSCQmEqEQimkAZgg8TZnDCV4Uk' +
'mCUmBKZYJGYWoWCUUhiFMNZckNUh2GENoaGaGZmgmJhqhqZpGGIEx2GYIxSGGGJdggWJth2Z4JmYeoemeSZ2H6H4hGmQhihyTRHGYLg7CiCgmgqIpokoNoOiOaJ4jqAo' +
'chqaZGgaCxpAoZoaiaaJqEmWIcGgShcnCJwqEqFoR3YOoFlgchflqNouiuawHmWSYqGkWZQhcatzmaOoumuSp2j6L5bBaKo0GQKRnGGCxqiyCwmkqMpsksNpOGUGI7A0' +
'ew1G0Rxlg0PptgsZuDG2Sx2l6N5tnYNZZjUDRXDCVo5l2FoymqOpukuNpujubwLjmWY5k0ZwxkaFxYlWdp6j6b5Lnafo/nABQdg2FxcUsY5BkmXAkmeQpckwNRrkKTh8' +
'CSHZBk4NwyC4KxxgMDwakOMZDn8GgwnGAo2C4cwthMcwmCcMoHBMHRehwTIghySYNksZwcH4HBMEsHx5hyPItiweYxnwSZEH4Mozn0fR+DMAo7EYJ50gkdZelKdNql2U' +
'gJn0GIukwH4HicQRai2GI4mSVpNl0dZGledgNgcYpYDWUx3FsOQi5YV5anaTY3G6W53A2RxylydxFjiaxEFCCgBBAQ==');
Add(2,'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' +
'RBCCQAgQEA==');
Add(3,'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');
Add(4,'gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL' +
'UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBU' +
'rGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3' +
'NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsY' +
'YDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVm' +
'WCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVo' +
'WiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiS' +
'e41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhF' +
'CcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==');
end;
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorHeader := $4c6c6c6;
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $4000000;
SelForeColor := Color.FromArgb(0,0,1);
set_Background(EXCASCADETREELib.BackgroundPartEnum($14),SelBackColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($15),SelForeColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($8 Or Integer(EXCASCADETREELib.BackgroundPartEnum.exSplitBar)),BackColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($9 Or Integer(EXCASCADETREELib.BackgroundPartEnum.exSplitBar)),ForeColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($20),$ffffffff);
set_Background(EXCASCADETREELib.BackgroundPartEnum($0),$4000000);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHeaderFilterBarActive,$4010101);
set_Background(EXCASCADETREELib.BackgroundPartEnum($1),$40000ff);
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
BackColorSortBar := BackColor;
BackColorLevelHeader := BackColor;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\MN';
EndUpdate();
end
|
78
|
ImageSize property on 16 (default) (specifies the size of control' icons/images/check-boxes/radio-buttons)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
EnsureVisibleColumn('Function');
with Columns.Item['Function'] do
begin
end;
Columns.Item[TObject(0)].Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
ImageSize := 16;
Images('gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOqd' +
'SqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVtt' +
'mp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8ac' +
'vQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtTG' +
'sbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgPn' +
'wD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg==');
with VisualAppearance do
begin
Add(4,'gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHL' +
'UXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBU' +
'rGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3' +
'NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsY' +
'YDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVm' +
'WCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVo' +
'WiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiS' +
'e41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhF' +
'CcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==');
end;
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorHeader := $4c6c6c6;
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $4000000;
SelForeColor := Color.FromArgb(0,0,1);
set_Background(EXCASCADETREELib.BackgroundPartEnum($14),SelBackColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($15),SelForeColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($8 Or Integer(EXCASCADETREELib.BackgroundPartEnum.exSplitBar)),BackColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($9 Or Integer(EXCASCADETREELib.BackgroundPartEnum.exSplitBar)),ForeColor);
set_Background(EXCASCADETREELib.BackgroundPartEnum($20),$ffffffff);
set_Background(EXCASCADETREELib.BackgroundPartEnum($0),$4000000);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHeaderFilterBarActive,$4010101);
set_Background(EXCASCADETREELib.BackgroundPartEnum($1),$40000ff);
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
BackColorSortBar := BackColor;
BackColorLevelHeader := BackColor;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\MN';
EndUpdate();
end
|
77
|
Is it possible to highlight the column's header once a filter is applied

with AxCascadeTree1 do
begin
BeginUpdate();
with VisualAppearance do
begin
Add(2,'gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ' +
'0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YN' +
'YuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4h' +
'hKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgb' +
'hOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWB' +
'MJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=');
Add(1,'CP:2 -8 -4 2 4');
end;
set_Background(EXCASCADETREELib.BackgroundPartEnum($0),$1fefefe);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHeaderFilterBarActive,$1010101);
set_Background(EXCASCADETREELib.BackgroundPartEnum($20),$ffffffff);
BackColorHeader := Color.FromArgb(255,255,255);
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with get_DefaultView(Nil) do
begin
HeaderHeight := 28;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exRowLines;
HeaderVisible := True;
with Columns do
begin
(Add('C1') as EXCASCADETREELib.Column).DisplayFilterButton := True;
with (Add('C2') as EXCASCADETREELib.Column) do
begin
DisplayFilterButton := True;
Filter := 'Item 2';
FilterType := EXCASCADETREELib.FilterTypeEnum.exFilter;
end;
(Add('C3') as EXCASCADETREELib.Column).DisplayFilterButton := True;
end;
with Items do
begin
h := AddItem('Item 1');
CellValue[TObject(h),TObject(1)] := 'Item 2';
CellValue[TObject(h),TObject(2)] := 'Item 3';
h := AddItem('Item 4');
CellValue[TObject(h),TObject(1)] := 'Item 5';
CellValue[TObject(h),TObject(2)] := 'Item 6';
end;
ApplyFilter();
end;
EndUpdate();
end
|
76
|
Is it possible to show the filterbar on top of the rows

with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with get_DefaultView(Nil) do
begin
ColumnAutoResize := True;
FilterBarPromptVisible := EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarTop;
HeaderHeight := 24;
FilterBarHeight := HeaderHeight;
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Flat;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exAllLines;
GridLineStyle := EXCASCADETREELib.GridLinesStyleEnum.exGridLinesGeometric;
with (Columns.Add('Column') as EXCASCADETREELib.Column) do
begin
DisplayFilterButton := True;
FilterType := EXCASCADETREELib.FilterTypeEnum.exPattern;
Filter := 'B*';
end;
with (Columns.Add('Index') as EXCASCADETREELib.Column) do
begin
FormatColumn := '1 index ``';
Position := 0;
Width := 48;
AllowSizing := False;
SortType := EXCASCADETREELib.SortTypeEnum.SortNumeric;
Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
end;
with Items do
begin
AddItem('A.1');
AddItem('A.2');
AddItem('B.1');
AddItem('B.2');
AddItem('B.3');
AddItem('C');
end;
ApplyFilter();
end;
EndUpdate();
end
|
75
|
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header (non-clickable)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
k := ParentView.Value[Nil];
BeginUpdate();
ColumnAutoResize := True;
Columns.Add(k);
with Items do
begin
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 1`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 2`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 3`',TObject(k),Nil,Nil));
end;
EndUpdate();
end;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with View do
begin
BeginUpdate();
ColumnAutoResize := True;
with (Columns.Add('Default') as EXCASCADETREELib.Column) do
begin
AllowSort := False;
AllowDragging := False;
end;
Key := TObject(0);
with Items do
begin
AddItem('Item A');
SelectItem[AddItem('Item B')] := True;
AddItem('Item C');
end;
EndUpdate();
end;
EndUpdate();
end
|
74
|
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
k := ParentView.Value[Nil];
BeginUpdate();
ColumnAutoResize := True;
Columns.Add(k);
with Items do
begin
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 1`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 2`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 3`',TObject(k),Nil,Nil));
end;
EndUpdate();
end;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
set_Background(EXCASCADETREELib.BackgroundPartEnum($20),$ffffffff);
with View do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Add('Default');
Key := TObject(0);
with Items do
begin
AddItem('Item A');
SelectItem[AddItem('Item B')] := True;
AddItem('Item C');
end;
EndUpdate();
end;
EndUpdate();
end
|
73
|
Type of wraps the cell's caption support (Sample 2)

with AxCascadeTree1 do
begin
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with get_DefaultView(Nil) do
begin
BeginUpdate();
HeaderSingleLine := False;
HeaderHeight := 36;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exRowLines;
ColumnAutoResize := False;
ScrollBySingleLine := True;
with Columns do
begin
with (Add('Single-Line (exCaptionSingleLine)') as EXCASCADETREELib.Column) do
begin
Width := 96;
Def[EXCASCADETREELib.DefColumnEnum.exCellValueFormat] := TObject(1);
Def[EXCASCADETREELib.DefColumnEnum.exCellSingleLine] := TObject(-1);
end;
with (Add('Word-Wrap (exCaptionWordWrap)') as EXCASCADETREELib.Column) do
begin
Width := 96;
Def[EXCASCADETREELib.DefColumnEnum.exCellValueFormat] := TObject(1);
Def[EXCASCADETREELib.DefColumnEnum.exCellSingleLine] := TObject(0);
FormatColumn := '%0';
end;
with (Add('Break-Wrap (exCaptionBreakWrap)') as EXCASCADETREELib.Column) do
begin
Width := 96;
Def[EXCASCADETREELib.DefColumnEnum.exCellValueFormat] := TObject(1);
Def[EXCASCADETREELib.DefColumnEnum.exCellSingleLine] := TObject(1);
FormatColumn := '%0';
end;
end;
with Items do
begin
AddItem('This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.');
AddItem('This is the <b>first</b> line.\r\nThis is the <b>second</b> line.\r\nThis is the <b>third</b> line.');
end;
EndUpdate();
end;
end
|
72
|
Type of wraps the cell's caption support (Sample 1)

with AxCascadeTree1 do
begin
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with get_DefaultView(Nil) do
begin
BeginUpdate();
HeaderSingleLine := False;
HeaderHeight := 36;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exRowLines;
ColumnAutoResize := False;
ScrollBySingleLine := True;
(Columns.Add('Default') as EXCASCADETREELib.Column).Width := 128;
with Items do
begin
h := AddItem('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
h := AddItem('This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.');
CellValueFormat[TObject(h),TObject(0)] := EXCASCADETREELib.ValueFormatEnum.exHTML;
h := AddItem('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
CellSingleLine[TObject(h),TObject(0)] := EXCASCADETREELib.CellSingleLineEnum.exCaptionWordWrap;
h := AddItem('This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.');
CellValueFormat[TObject(h),TObject(0)] := EXCASCADETREELib.ValueFormatEnum.exHTML;
CellSingleLine[TObject(h),TObject(0)] := EXCASCADETREELib.CellSingleLineEnum.exCaptionWordWrap;
h := AddItem('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
CellSingleLine[TObject(h),TObject(0)] := EXCASCADETREELib.CellSingleLineEnum.exCaptionBreakWrap;
h := AddItem('This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.');
CellValueFormat[TObject(h),TObject(0)] := EXCASCADETREELib.ValueFormatEnum.exHTML;
CellSingleLine[TObject(h),TObject(0)] := EXCASCADETREELib.CellSingleLineEnum.exCaptionBreakWrap;
end;
EndUpdate();
end;
end
|
71
|
Can I break the cell's caption using the line break <br> or \r\n (Sample 2)

with AxCascadeTree1 do
begin
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with get_DefaultView(Nil) do
begin
BeginUpdate();
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exRowLines;
ColumnAutoResize := False;
ScrollBySingleLine := True;
(Columns.Add('Default') as EXCASCADETREELib.Column).Width := 128;
with Items do
begin
CellSingleLine[TObject(AddItem('This is the first line.\r\nThis is the second line.\r\nThis is the third line.')),TObject(0)] := EXCASCADETREELib.CellSingleLineEnum.exCaptionBreakWrap;
AddItem('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
end;
EndUpdate();
end;
end
|
70
|
Can I break the cell's caption using the line break <br> or \r\n (Sample 1)

with AxCascadeTree1 do
begin
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with get_DefaultView(Nil) do
begin
BeginUpdate();
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exRowLines;
ColumnAutoResize := False;
ScrollBySingleLine := True;
with (Columns.Add('Default') as EXCASCADETREELib.Column) do
begin
Width := 128;
Def[EXCASCADETREELib.DefColumnEnum.exCellSingleLine] := TObject(1);
end;
with Items do
begin
AddItem('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
AddItem('This is the first line.\r\nThis is the second line.\r\nThis is the third line.');
end;
EndUpdate();
end;
end
|
69
|
Is it possible to change the visual appearance of the position signs when user changes the column's position by drag and drop

with AxCascadeTree1 do
begin
BeginUpdate();
with VisualAppearance do
begin
Add(1,'gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVI' +
'UcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4a' +
'DhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBe' +
'EMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIB' +
'ICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokG' +
'KHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=');
Add(2,'CP:1 0 -36 0 0');
end;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exColumnsPositionSign,$2000000);
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with get_DefaultView(Nil) do
begin
BeginUpdate();
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
with Columns do
begin
Add('Column 1');
Add('Column 2');
Add('Column 3');
end;
EndUpdate();
end;
EndUpdate();
end
|
68
|
DataSource (control, ADODB, ACCDB, x64)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
bSingle := FormatABC('value > 0 ? 0 : -1',View.Index,Nil,Nil);
bColumnAutoResize := FormatABC('value = `City` ? 0 : -1',View.Tag,Nil,Nil);
with View do
begin
ColumnAutoResize := False;
SingleSel := False;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := Integer(EXCASCADETREELib.CascadeModeEnum.exAutoFitOnResizeClient) Or Integer(EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode);
DataSource := 'locktype=1;Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryC' +
'ode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Nam' +
'e=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Membe' +
'r=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Nam' +
'e=Name';
Select := 'US\AK';
EndUpdate();
end
|
67
|
DataSource (view, ADODB, ACCDB, x64)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be string (Source/Member), ADO or DAO objects';
DefColumnWidth := 336;
ado := (ComObj.CreateComObject(ComObj.ProgIDToClassID('ADODB.Recordset')) as ADODB.Recordset);
with ado do
begin
Open('Countries','Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb',3,1,-1);
end;
with get_DefaultView(Nil) do
begin
DataSource := (ado as ADODB.Recordset);
ColumnAutoResize := True;
end;
EndUpdate();
end
|
66
|
Simple sample

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
bSingle := FormatABC('value > 0 ? 0 : -1',View.Index,Nil,Nil);
bColumnAutoResize := FormatABC('value = `City` ? 0 : -1',View.Tag,Nil,Nil);
with View do
begin
ColumnAutoResize := False;
SingleSel := False;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := Integer(EXCASCADETREELib.CascadeModeEnum.exAutoFitOnResizeClient) Or Integer(EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
EndUpdate();
end
|
65
|
FilterBar sample

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
HeaderHeight := 20;
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exAllLines;
GridLineStyle := EXCASCADETREELib.GridLinesStyleEnum.exGridLinesDash;
end;
with get_DefaultView(Nil) do
begin
with View['Country'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
with Columns.Item[TObject(1)] do
begin
HTMLCaption := 'Country';
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
end;
EndUpdate();
end;
with View['State'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'State';
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
end;
EndUpdate();
end;
with View['City'] do
begin
BeginUpdate();
Columns.Item['CountryCode'].Visible := False;
Columns.Item['StateCode'].Visible := False;
with Columns.Item['Name'] do
begin
HTMLCaption := 'City';
Width := 128;
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
end;
SearchColumnIndex := Columns.Item['Name'].Index;
with Columns.Item['Status'] do
begin
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
end;
with Columns.Item['Function'] do
begin
Def[EXCASCADETREELib.DefColumnEnum.exCellValueFormat] := TObject(1);
FormatColumn := 'value replace 1 with `<img>1</img>` replace 2 with `<img>2</img>` replace 3 with `<img>3</img>` replace 4 with `<img>4</img>` re' +
'place 5 with `<img>5</img>` replace 6 with `<img>6</img>` replace 7 with `<img>7</img>` replace 8 with `<img>8</img>` replace 9 ' +
'with `<img>9</img>` replace `-` with `` ';
end;
with (Columns.Add('Pos') as EXCASCADETREELib.Column) do
begin
AllowSizing := False;
Width := 32;
Def[EXCASCADETREELib.DefColumnEnum.exCellBackColor] := TObject(15790320);
Position := 0;
FormatColumn := '1 pos ``';
Alignment := EXCASCADETREELib.AlignmentEnum.CenterAlignment;
HeaderAlignment := Alignment;
end;
CountLockedColumns := 1;
Width := WidthToFit;
EndUpdate();
end;
end;
with View do
begin
FilterBarHeight := 36;
FilterBarCaption := '(( ( allui replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `' +
'[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` ) + `<r><fgcolor=808080>` + ( match' +
'itemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcoun' +
't + ` item(s)`) )))';
FilterBarPromptVisible := Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarShowCloseIfRequired) Or Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarVisible) Or Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarPromptVisible);
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-01.ico');
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-02.ico');
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-03.ico');
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-04.ico');
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-05.ico');
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-06.ico');
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-07.ico');
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-08.ico');
Images('C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-09.ico');
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Count' +
'ry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;T' +
'ag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FR' +
'OM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'RO\CJ';
with get_DefaultView(Nil).View['City'] do
begin
FilterBarPromptPattern := 'Tu';
end;
with VisualAppearance do
begin
Add(1,'gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVI' +
'UcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4a' +
'DhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBe' +
'EMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIB' +
'ICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokG' +
'KHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=');
Add(2,'gBFLBCJwBAEHhEJAAEhABHQDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLOg7IJj' +
'yI4/SJAYCydKAWhxIaZKJHCZoEDaTAADCNVAQp6MEIJVbVEI0e79OgBLp/Z7kECIJJAaRjHQdJxGLA8EhtCQhCZteK6SgMKJYXhWQYRXI1JwvMBrWrdQjiOYELQtMKmS' +
'ZNLYGG4dR5SVJbcYhSYsRRFMoyDIOXYDLKsdYqSpXIThObEGgaPqJYjsUjCMKnR7HVIURrBPC9TBPE69ZgmC6ucKPX51ShKFaBWDZcwFAS+UBuYCAILiEAQGZ1XT8ORO' +
'icbgJgSTJRlCaZeDsHY7QGR4xkSYp3CaExZAQMgalQYAwjCAAfBANxcA2TgKAUOpDCGFhKg0RpXCwCwDHQHQHEyAIkCkOhbFOGA8A8DohBgRg9AccZcn8EpEjMLI2C2D' +
'YxAgQgvAIUIVkoAAPBQDJlECTZ3CCYwDACQwUA8A5MCAWAWDiQi4l8aQOEgLJuBgBgDmYFAzEoIoIl0WALgKYJbBABADAAHgHg8VAMmqCQQDMXABAATYwTmNwBDATJXA' +
'iAgjHmNQ5lgQ5QEQEQMmcWg/GwD5ylyNw2gMcJcjsBgBgOQQDDhRpVAMMwnDBFw1B0Ax8D0DxOmmJJIGQTY5hGMAwkwM4CAYLZAmAOJnAqAojiIGg6iieYkmeAYOHaKJ' +
'DCyCwjH6AoggsQpQliAJLhgaJ0CESBTnyDwjk+cg4g4P5IHIHJ+BWRRzlYWAxiOUxihsY4KjKLJRGqC44FCegkkkM58iAKAPnIWIWD8SRSFSfQnkmewUhYP4GiGKJ7G0' +
'TIbCSUoggqUo0lAQ4LnEcBcD8Coiiif4nE+eAAn2HpOkcFJqi4T5SkyMw/kqQown8IBIBOdA+A+DJrBqVxXEqYo4lCApLhGHBnD8S4ymyfxmg+cwQkQP5egOUZIWoEAk' +
'jIeIPBMBJBD+TBjBifwvkuc58hQJQPmFrYykkchclSApKjGOBuD+TRDFCfw3mmIxNi8FxFlOXhVC4aYDFyPgvg2YBcBcLZGCGCJ0DSLRzGSWQ/lmY5+mEP5gmMDBZRSM' +
'RsFsOxMhMJJ/DsTpTnwaQaE+N5ojuNhdEYNI5C4TZJO1GRDmCaxnA2Yx4n8IpIjOTBQBQC5TgyYw7gUYRYikC0BYRwsDQBoB8eA6Q2hsE0BUXgywZtYCyHMKwnxSAhAQ' +
'HkIQhRrBaDsCwA4ERiB2EWAIYIXhhiVEgAEUYwwYjyASLge4FhHgRDkM8OQih0jWPkGgBBAQ');
end;
BackColorSortBar := BackColor;
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$4);
set_Background(EXCASCADETREELib.BackgroundPartEnum($0),$1000000);
set_Background(EXCASCADETREELib.BackgroundPartEnum($1),$2000000);
set_Background(EXCASCADETREELib.BackgroundPartEnum($20),$ffffffff);
EndUpdate();
end
|
64
|
GroupBy sample

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.HeaderHeight := 24;
with get_DefaultView(Nil) do
begin
with View['State'] do
begin
BeginUpdate();
SingleSel := False;
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'State <off 4><fgcolor=808080>Name';
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
end;
EndUpdate();
end;
with View['City'] do
begin
nSelected := ParentView.Items.SelectCount;
bGroupBy := AxCascadeTree1.FormatABC('value > 1 ? -1 : 0',TObject(nSelected),Nil,Nil);
BeginUpdate();
SingleSel := False;
SortBarCaption := 'Drag a <b>column</b> header here to group by that column.';
HasLines := EXCASCADETREELib.HierarchyLineEnum.exSolidLine;
ColumnAutoResize := False;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exVLines;
GridLineStyle := EXCASCADETREELib.GridLinesStyleEnum.exGridLinesVSolid;
Columns.Item['CountryCode'].Visible := False;
with Columns.Item['Name'] do
begin
HTMLCaption := 'City <off 4><fgcolor=808080>Name';
Width := 128;
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
end;
SearchColumnIndex := 2;
TreeColumnIndex := SearchColumnIndex;
SingleSort := False;
AllowGroupBy := False;
SortBarVisible := False;
with Columns.Item['StateCode'] do
begin
Visible := False;
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
end;
Width := WidthToFit;
EndUpdate();
end;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with VisualAppearance do
begin
Add(1,'C:\Program Files\Exontrol\ExCascadeTree\Sample\EBN\Assorted\vistaselDark.ebn');
Add(2,'C:\Program Files\Exontrol\ExCascadeTree\Sample\EBN\Assorted\bhframe.ebn');
end;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Count' +
'ry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;T' +
'ag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FR' +
'OM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'RO\CJ|BV|GL|IL';
with get_DefaultView(Nil).View['Country'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
with Columns.Item[TObject(1)] do
begin
HTMLCaption := 'Country <off 4><fgcolor=808080>Name';
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
end;
EndUpdate();
end;
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $1000000;
SelForeColor := Color.FromArgb(255,255,255);
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorHeader := $2000000;
BackColorSortBar := BackColor;
BackColorSortBarCaption := BackColor;
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$4);
BackColorSortBar := BackColor;
EndUpdate();
end
|
63
|
Manual sample

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
BeginUpdate();
k := ParentView.Value[Nil];
HeaderVisible := False;
ColumnAutoResize := True;
ScrollBySingleLine := True;
(Columns.Add('Default') as EXCASCADETREELib.Column).Def[EXCASCADETREELib.DefColumnEnum.exCellSingleLine] := TObject(False);
Key := TObject(0);
with Items do
begin
AddItem(AxCascadeTree1.FormatABC('A + `.Child 1`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `.Child 2`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `.Child 3`',TObject(k),Nil,Nil));
end;
EndUpdate();
end;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorAlternate := $7ff0f0f0;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$f0f0f0);
with get_DefaultView(Nil) do
begin
BeginUpdate();
HeaderVisible := False;
ColumnAutoResize := True;
ScrollBySingleLine := True;
(Columns.Add('Default') as EXCASCADETREELib.Column).Def[EXCASCADETREELib.DefColumnEnum.exCellSingleLine] := TObject(False);
Key := TObject(0);
with Items do
begin
AddItem('Item A');
AddItem('Item B');
AddItem('Item C');
end;
EndUpdate();
end;
Select := 'Item A\Item*A*2\Item*A*2*3\';
EndUpdate();
end
|
62
|
Appearance sample

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.HeaderHeight := 24;
with get_DefaultView(Nil) do
begin
with View['State'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'State <off 4><fgcolor=808080>Name';
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
end;
with Items do
begin
LockedItemCount[EXCASCADETREELib.VAlignmentEnum.exTop] := 1;
h := LockedItem[EXCASCADETREELib.VAlignmentEnum.exTop,0];
ItemDivider[h] := 0;
CellValueFormat[TObject(h),TObject(0)] := Integer(EXCASCADETREELib.ValueFormatEnum.exTotalField) Or Integer(EXCASCADETREELib.ValueFormatEnum.exHTML);
CellValue[TObject(h),TObject(0)] := 'count(all,all,1)';
FormatCell[TObject(h),TObject(0)] := '`<r>States: <b>`+ (value format `0`)';
end;
EndUpdate();
end;
with View['City'] do
begin
BeginUpdate();
SingleSel := False;
ColumnAutoResize := False;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exVLines;
GridLineStyle := EXCASCADETREELib.GridLinesStyleEnum.exGridLinesVSolid;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'City <off 4><fgcolor=808080>Name';
Width := 128;
Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
end;
SearchColumnIndex := 2;
ConditionalFormats.Add('%CS2 = 1',Nil).Bold := True;
with Items do
begin
LockedItemCount[EXCASCADETREELib.VAlignmentEnum.exTop] := 1;
h := LockedItem[EXCASCADETREELib.VAlignmentEnum.exTop,0];
ItemDivider[h] := 0;
CellValueFormat[TObject(h),TObject(0)] := Integer(EXCASCADETREELib.ValueFormatEnum.exTotalField) Or Integer(EXCASCADETREELib.ValueFormatEnum.exHTML);
CellValue[TObject(h),TObject(0)] := 'count(all,all,1)';
FormatCell[TObject(h),TObject(0)] := '`<r>Cities: <b>`+ (value format `0`)';
end;
Width := WidthToFit;
EndUpdate();
end;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with VisualAppearance do
begin
Add(1,'C:\Program Files\Exontrol\ExCascadeTree\Sample\EBN\MSOffice-Ribbon\msor_select.ebn');
Add(2,'C:\Program Files\Exontrol\ExCascadeTree\Sample\EBN\MSOffice-Ribbon\msor_background.ebn');
end;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Count' +
'ry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;T' +
'ag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FR' +
'OM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
with get_DefaultView(Nil).View['Country'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
with Columns.Item[TObject(1)] do
begin
HTMLCaption := 'Country <off 4><fgcolor=808080>Name';
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
end;
with Items do
begin
LockedItemCount[EXCASCADETREELib.VAlignmentEnum.exTop] := 1;
h := LockedItem[EXCASCADETREELib.VAlignmentEnum.exTop,0];
ItemDivider[h] := 0;
CellValueFormat[TObject(h),TObject(0)] := Integer(EXCASCADETREELib.ValueFormatEnum.exTotalField) Or Integer(EXCASCADETREELib.ValueFormatEnum.exHTML);
CellValue[TObject(h),TObject(0)] := 'count(all,all,1)';
FormatCell[TObject(h),TObject(0)] := '`<r>Countries: <b>`+ (value format `0`)';
end;
EndUpdate();
end;
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $1000000;
SelForeColor := Color.FromArgb(0,0,0);
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorHeader := $2000000;
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$4);
BackColorSortBar := BackColor;
EndUpdate();
end
|
61
|
How can I get the selected items (sample 2)
// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
k := ParentView.Value[Nil];
BeginUpdate();
ColumnAutoResize := True;
Key := TObject(-1);
Columns.Add(k);
with Items do
begin
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 1`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 2`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 3`',TObject(k),Nil,Nil));
end;
EndUpdate();
end;
end
end;
// ViewItemStateEndChanging event - Indicates that the state of the item has been changed.
procedure TWinForm1.AxCascadeTree1_ViewItemStateEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewItemStateEndChangingEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'End' );
OutputDebugString( e.operation );
with View.Items do
begin
OutputDebugString( 'FocusItem' );
OutputDebugString( CellCaption[TObject(FocusItem),TObject(0)] );
OutputDebugString( 'SelectedItem' );
OutputDebugString( CellCaption[TObject(SelectedItem[0]),TObject(0)] );
end;
end
end;
// ViewItemStateStartChanging event - Indicates that the state of the item is about to be changed.
procedure TWinForm1.AxCascadeTree1_ViewItemStateStartChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewItemStateStartChangingEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Start' );
OutputDebugString( e.operation );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with View do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Add('Default');
Key := TObject(0);
LinesAtRoot := EXCASCADETREELib.LinesAtRootEnum.exLinesAtRoot;
with Items do
begin
AddItem('Item A');
SelectItem[AddItem('Item B')] := True;
AddItem('Item C');
end;
EndUpdate();
end;
EndUpdate();
end
|
60
|
How do I specify a foreground color for a particular view

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
get_DefaultView(Nil).ConditionalFormats.Add('1',Nil).ForeColor := $808080;
EndUpdate();
end
|
59
|
How do display result/items in the view's filter bar

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exAllLines;
GridLineStyle := EXCASCADETREELib.GridLinesStyleEnum.exGridLinesDash;
end;
with get_DefaultView(Nil) do
begin
with View['Country'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
with Columns.Item[TObject(1)] do
begin
HTMLCaption := 'Country <off 4><fgcolor=808080>Name';
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
end;
EndUpdate();
end;
with View['State'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'State <off 4><fgcolor=808080>Name';
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
end;
EndUpdate();
end;
with View['City'] do
begin
BeginUpdate();
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'City <off 4><fgcolor=808080>Name';
Width := 128;
Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
end;
with (Columns.Add('Pos') as EXCASCADETREELib.Column) do
begin
AllowSizing := False;
Width := 32;
Def[EXCASCADETREELib.DefColumnEnum.exCellBackColor] := TObject(15790320);
Position := 0;
FormatColumn := '1 pos ``';
end;
CountLockedColumns := 1;
EndUpdate();
end;
end;
with View do
begin
FilterBarHeight := 36;
FilterBarCaption := '(( ( allui replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `' +
'[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </fgcolor></bgcolor>` ) + `<r><fgcolor=808080>` + ( match' +
'itemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcoun' +
't + ` item(s)`) )))';
FilterBarPromptType := EXCASCADETREELib.FilterPromptEnum.exFilterPromptStartWith;
FilterBarPromptVisible := Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarShowCloseIfRequired) Or Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarVisible) Or Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarPromptVisible);
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$2);
EndUpdate();
BeginUpdate();
MinColumnWidth := 348;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
with get_DefaultView(Nil).View['City'] do
begin
FilterBarPromptPattern := 'An';
end;
EndUpdate();
end
|
58
|
I am using the filter prompt feature, the question is how can I filter for items that starts with typed characters rather than contains

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
FilterBarPromptType := EXCASCADETREELib.FilterPromptEnum.exFilterPromptStartWith;
FilterBarPromptVisible := EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarPromptVisible;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
with get_DefaultView(Nil).View['City'] do
begin
FilterBarPromptPattern := 'An';
with Columns.Item['Name'] do
begin
Width := 128;
Def[EXCASCADETREELib.DefColumnEnum.exCellValueFormat] := TObject(1);
FormatColumn := 'value replace `An` with `<bgcolor=000000><fgcolor=FFFFFF>An</fgcolor></bgcolor>` ';
end;
end;
EndUpdate();
end
|
57
|
FilterBarCaption Predefined Keywords

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
BackColorAlternate := Color.FromArgb(240,240,240);
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US';
with get_DefaultView(Nil).View['Country'] do
begin
with (Columns.Add('Pos') as EXCASCADETREELib.Column) do
begin
Position := 0;
Width := 32;
AllowSizing := False;
FormatColumn := '1pos ``';
end;
with Columns.Item['CountryCode'] do
begin
Width := 32;
AllowSizing := False;
DisplayFilterButton := True;
end;
with Columns.Item['CountryName'] do
begin
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
FilterType := EXCASCADETREELib.FilterTypeEnum.exFilter;
Filter := 'Italy|Romania|Germany';
end;
FilterBarPromptPattern := 'a';
ColumnAutoResize := True;
SearchColumnIndex := Columns.Item['CountryName'].Index;
FilterInclude := EXCASCADETREELib.FilterIncludeEnum.exItemsWithChilds;
FilterBarCaption := '`<fgcolor=0000FF><i>value/current</i></fgcolor>: <fgcolor=808080>` + value + `</fgcolor>` + `<br><fgcolor=0000FF><i>available</i' +
'></fgcolor>: ` + available + `<br><fgcolor=0000FF><i>allui</i></fgcolor>: ` + allui + `<br><fgcolor=0000FF><i>all</i></fgcolor>:' +
' ` + all + `<br><fgcolor=0000FF><i>itemcount</i></fgcolor>: <fgcolor=808080>` + itemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><' +
'i>visibleitemcount</i></fgcolor>: <fgcolor=808080>` + visibleitemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>matchitemcount</i' +
'></fgcolor>: <fgcolor=808080>` + matchitemcount + `</fgcolor>`+ `<br><fgcolor=0000FF><i>promptpattern</i></fgcolor>: <fgcolor=80' +
'8080>` + promptpattern + `</fgcolor>`+ `<br><fgcolor=0000FF><i>leafitemcount</i></fgcolor>: <fgcolor=808080>` + leafitemcount + ' +
'`</fgcolor>`';
FilterBarPromptVisible := Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarCaptionVisible) Or Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarVisible) Or Integer(EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarPromptVisible);
ApplyFilter();
end;
EndUpdate();
end
|
56
|
How can I enable the column's filter bar (view)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.FilterBarPromptVisible := EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarPromptVisible;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
with get_DefaultView(Nil).View['Country'] do
begin
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
with Columns.Item['CountryName'] do
begin
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
FilterType := EXCASCADETREELib.FilterTypeEnum.exFilter;
Filter := 'Romania|Germany';
end;
ApplyFilter();
end;
EndUpdate();
end
|
55
|
How can I enable the column's filter bar

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
FilterBarPromptVisible := EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarPromptVisible;
with Columns.Item[TObject(0)] do
begin
DisplayFilterButton := True;
FilterList := Integer(EXCASCADETREELib.FilterListEnum.exShowExclude) Or Integer(EXCASCADETREELib.FilterListEnum.exShowFocusItem) Or Integer(EXCASCADETREELib.FilterListEnum.exShowCheckBox) Or Integer(EXCASCADETREELib.FilterListEnum.exSortItemsAsc);
FilterBarDropDownWidth := 2;
end;
end;
with get_DefaultView(Nil).View['Country'] do
begin
with Columns.Item[TObject(0)] do
begin
FilterType := EXCASCADETREELib.FilterTypeEnum.exFilter;
Filter := 'US|RO|GE';
end;
ApplyFilter();
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
54
|
How can I enable the control's filter bar (view)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
get_DefaultView(Nil).FilterBarPromptVisible := EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarPromptVisible;
EndUpdate();
end
|
53
|
How can I enable the control's filter bar

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.FilterBarPromptVisible := EXCASCADETREELib.FilterBarVisibleEnum.exFilterBarPromptVisible;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
52
|
Aggregate sum, min, max, count, avg, divider, total (view)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitEqualCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'RO';
with get_DefaultView(Nil).View['Country'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
with Items do
begin
LockedItemCount[EXCASCADETREELib.VAlignmentEnum.exTop] := 1;
h := LockedItem[EXCASCADETREELib.VAlignmentEnum.exTop,0];
ItemDivider[h] := 0;
CellValueFormat[TObject(h),TObject(0)] := Integer(EXCASCADETREELib.ValueFormatEnum.exTotalField) Or Integer(EXCASCADETREELib.ValueFormatEnum.exHTML);
CellValue[TObject(h),TObject(0)] := 'count(all,all,1)';
FormatCell[TObject(h),TObject(0)] := '`<r>Countries: <b>`+ (value format `0`)';
end;
EndUpdate();
end;
EndUpdate();
end
|
51
|
Aggregate sum, min, max, count, avg, divider, total

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.HeaderVisible := False;
with get_DefaultView(Nil) do
begin
with View['Country'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
with Items do
begin
LockedItemCount[EXCASCADETREELib.VAlignmentEnum.exTop] := 1;
h := LockedItem[EXCASCADETREELib.VAlignmentEnum.exTop,0];
ItemDivider[h] := 0;
CellValueFormat[TObject(h),TObject(0)] := Integer(EXCASCADETREELib.ValueFormatEnum.exTotalField) Or Integer(EXCASCADETREELib.ValueFormatEnum.exHTML);
CellValue[TObject(h),TObject(0)] := 'count(all,all,1)';
FormatCell[TObject(h),TObject(0)] := '`<r>Countries: <b>`+ (value format `0`)';
end;
EndUpdate();
end;
with View['State'] do
begin
BeginUpdate();
SingleSel := False;
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Items do
begin
LockedItemCount[EXCASCADETREELib.VAlignmentEnum.exTop] := 1;
h := LockedItem[EXCASCADETREELib.VAlignmentEnum.exTop,0];
ItemDivider[h] := 0;
CellValueFormat[TObject(h),TObject(0)] := Integer(EXCASCADETREELib.ValueFormatEnum.exTotalField) Or Integer(EXCASCADETREELib.ValueFormatEnum.exHTML);
CellValue[TObject(h),TObject(0)] := 'count(all,all,1)';
FormatCell[TObject(h),TObject(0)] := '`<r>States: <b>`+ (value format `0`)';
end;
EndUpdate();
end;
with View['City'] do
begin
BeginUpdate();
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
Width := 128;
HTMLCaption := 'CityName';
end;
with Items do
begin
LockedItemCount[EXCASCADETREELib.VAlignmentEnum.exTop] := 1;
h := LockedItem[EXCASCADETREELib.VAlignmentEnum.exTop,0];
ItemDivider[h] := 0;
CellValueFormat[TObject(h),TObject(0)] := Integer(EXCASCADETREELib.ValueFormatEnum.exTotalField) Or Integer(EXCASCADETREELib.ValueFormatEnum.exHTML);
CellValue[TObject(h),TObject(0)] := 'count(all,all,1)';
FormatCell[TObject(h),TObject(0)] := '`<r>Cities: <b>`+ (value format `0`)';
end;
EndUpdate();
end;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
50
|
How can I add a check-box column (view)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<c>Select multiple-items in the City view, and press <b>SPACE</b> key';
set_Background(EXCASCADETREELib.BackgroundPartEnum.exStatusBackColor,BackColor);
VisualAppearance.Add(1,'gBFLBCJwBAEHhEJAAEhABO0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEhqGiUBihaQhRgyJI3RlJGaoDi' +
'KIokShKEpDLKlCx3H6OKQjOZgAoySo4SbDMp0NAkRBlFqcJCCCLAUgmTpQUBOYyiLKNRxQGoYLIlayZIiSIpMRbWcB3BYEOSFFasAAleYZTg2Jp1TbPAAYFL1ISDKSiI' +
'ZqTA6PheT5yUzCNazbgEMTvRKqcSnO6bOgnEKQZKAGg4bg1RTVAYZLKtPR7aqyUJvZ5sMB6DiuLYRPKXZoucaNExSS5ebJtOzQJbEXBpXSpBwzSieBozIaQcJUOoaVxP' +
'FkaJrGuIx3h2BZPgOUIQmUcIwDARAkiAaQxh0DonCMLAeBKZobBCCY+niWJaBIKJJH4MoBgiQpCmmUR/ooBgCgCYBIBYBoBmCBYAn+ApgkgNgOgOYQIEYBIEGESBWBSB' +
'JhGgZgZgYIYoHYEIHCGaIGAuCAiCgegkgkYYoh4KIFiKKIuBeAJimiGgwgwYoYk4NILCCGJmDqDpjkidg+gGTo1jUAxAEAgI');
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $1000000;
SelForeColor := ForeColor;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
with get_DefaultView(Nil).View['City'] do
begin
BeginUpdate();
ShowFocusRect := False;
SingleSel := False;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'City <off 4><fgcolor=808080>Name';
Width := 128;
Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
end;
SearchColumnIndex := Columns.Item['Name'].Index;
with (Columns.Add('Pos') as EXCASCADETREELib.Column) do
begin
Position := 0;
Width := 32;
FormatColumn := '1 pos ``';
end;
with ConditionalFormats do
begin
Add('%CS2 = 1',Nil).BackColor := $bebebe;
with Add('%CS2 = 1',Nil) do
begin
Bold := True;
ApplyTo := EXCASCADETREELib.FormatApplyToEnum($8);
end;
end;
with Items do
begin
CellState[TObject(ItemByIndex[1]),TObject(2)] := 1;
CellState[TObject(ItemByIndex[3]),TObject(2)] := 1;
CellState[TObject(ItemByIndex[5]),TObject(2)] := 1;
end;
EndUpdate();
end;
EndUpdate();
end
|
49
|
How can I add a check-box column

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exVLines;
GridLineStyle := EXCASCADETREELib.GridLinesStyleEnum.exGridLinesDash;
end;
with get_DefaultView(Nil) do
begin
with View['Country'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].HTMLCaption := 'Country <off 4><fgcolor=808080>Name';
EndUpdate();
end;
with View['State'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
Columns.Item[TObject(2)].HTMLCaption := 'State <off 4><fgcolor=808080>Name';
EndUpdate();
end;
with View['City'] do
begin
BeginUpdate();
ShowFocusRect := False;
SingleSel := False;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'City <off 4><fgcolor=808080>Name';
Width := 128;
Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
end;
SearchColumnIndex := Columns.Item['Name'].Index;
with (Columns.Add('Pos') as EXCASCADETREELib.Column) do
begin
Position := 0;
Width := 32;
FormatColumn := '1 pos ``';
end;
with ConditionalFormats do
begin
Add('%CS2 = 1',Nil).BackColor := $bebebe;
with Add('%CS2 = 1',Nil) do
begin
Bold := True;
ApplyTo := EXCASCADETREELib.FormatApplyToEnum($8);
end;
end;
with Items do
begin
CellState[TObject(ItemByIndex[1]),TObject(2)] := 1;
CellState[TObject(ItemByIndex[3]),TObject(2)] := 1;
CellState[TObject(ItemByIndex[5]),TObject(2)] := 1;
end;
EndUpdate();
end;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<c>Select multiple-items in the City view, and press <b>SPACE</b> key';
set_Background(EXCASCADETREELib.BackgroundPartEnum.exStatusBackColor,BackColor);
VisualAppearance.Add(1,'gBFLBCJwBAEHhEJAAEhABO0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEhqGiUBihaQhRgyJI3RlJGaoDi' +
'KIokShKEpDLKlCx3H6OKQjOZgAoySo4SbDMp0NAkRBlFqcJCCCLAUgmTpQUBOYyiLKNRxQGoYLIlayZIiSIpMRbWcB3BYEOSFFasAAleYZTg2Jp1TbPAAYFL1ISDKSiI' +
'ZqTA6PheT5yUzCNazbgEMTvRKqcSnO6bOgnEKQZKAGg4bg1RTVAYZLKtPR7aqyUJvZ5sMB6DiuLYRPKXZoucaNExSS5ebJtOzQJbEXBpXSpBwzSieBozIaQcJUOoaVxP' +
'FkaJrGuIx3h2BZPgOUIQmUcIwDARAkiAaQxh0DonCMLAeBKZobBCCY+niWJaBIKJJH4MoBgiQpCmmUR/ooBgCgCYBIBYBoBmCBYAn+ApgkgNgOgOYQIEYBIEGESBWBSB' +
'JhGgZgZgYIYoHYEIHCGaIGAuCAiCgegkgkYYoh4KIFiKKIuBeAJimiGgwgwYoYk4NILCCGJmDqDpjkidg+gGTo1jUAxAEAgI');
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $1000000;
SelForeColor := ForeColor;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
48
|
How can I access a view

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
HeaderAppearance := EXCASCADETREELib.AppearanceEnum.Etched;
HeaderHeight := 24;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exAllLines;
GridLineStyle := EXCASCADETREELib.GridLinesStyleEnum.exGridLinesDash;
end;
with get_DefaultView(Nil) do
begin
with View['Country'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].HTMLCaption := 'Country <off 4><fgcolor=808080>Name';
EndUpdate();
end;
with View['State'] do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
Columns.Item[TObject(2)].HTMLCaption := 'State <off 4><fgcolor=808080>Name';
EndUpdate();
end;
with View['City'] do
begin
BeginUpdate();
Columns.Item[TObject(0)].Visible := False;
Columns.Item[TObject(1)].Visible := False;
with Columns.Item[TObject(2)] do
begin
HTMLCaption := 'City <off 4><fgcolor=808080>Name';
Width := 128;
Def[EXCASCADETREELib.DefColumnEnum.exCellBackColor] := TObject(15790320);
end;
CountLockedColumns := 1;
EndUpdate();
end;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
47
|
Conditional Format (check)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
with ConditionalFormats.Add('%CS0 = 1',Nil) do
begin
Bold := True;
end;
Columns.Item[TObject(0)].Def[EXCASCADETREELib.DefColumnEnum.exCellHasCheckBox] := TObject(True);
with Items do
begin
CellState[TObject(FocusItem),TObject(0)] := 1;
end;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
46
|
Conditional Format (view)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
with get_DefaultView(Nil).View['City'] do
begin
with ConditionalFormats.Add('(%0 = `US`) and (%2 like `Al*`)',Nil) do
begin
Bold := True;
BackColor := $f0f0f0;
end;
end;
EndUpdate();
end
|
45
|
Conditional Format

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
with ConditionalFormats.Add('%0 = `US`',Nil) do
begin
Bold := True;
end;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
44
|
I've seen the AllowSplitView property, the question is how can I load data to

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
AllowSplitView := EXCASCADETREELib.AllowSplitViewEnum.exAllowOneSplitView;
SplitViewHeight := 256;
with (get_DefaultView(TObject(1)) as Object) do
begin
end;
EndUpdate();
end
|
43
|
How can I group the items (view)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.SingleSel := False;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with VisualAppearance do
begin
Add(1,'gBFLBCJwBAEHhEJAAEhABa0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDYOMjwlDKEgADDFEgjJBkRxtDCPIDnGQoDi' +
'GI4vSrCQ4yDA8GxCGSfIrjKiYbiGNY8RgZCiOMAFJSpC6gZRoSq4doGGJLQiDMaAdBNHyZKqpbQqeCZPDINQlWzbcrjKKFYQTOi7I4sCbYcqKA5PTbNdYyVBMWxfGIba' +
'IkXAcBjuO4hWbFdASRQdDYtHTIbzjCxLcgMD4gRwWCYNSAGRZJLDKK4gSh6eorHQAX4AGabFBOP5fC7TNJ0OKLRrkAJub5eFx3LJ97ohbLsOzYZK2ByDFqiMLGQZMZxv' +
'GWUBAnYfJImcOwLEiBp0gaGpekSBxjE+WZ2jse5Im2S5ZkGYhdn4EY6A4Q4vAOWJ6H0V4oEgIgSFAGhGDGUB1ByBhVBUAwyhKMQIE2AgRjCWQJAoEIWk2SxCAGBBghQe' +
'JYkMZIYBYIYoHIG4HGICB+CKB4iEiBglgaUAzhiJAZA+Q4Qk2CxiniOgwgyYwolYMYNmMQw2CoGQihiLg5g+YxpAIOINiOOJ2CyEBkgkDhKhCJBQAI2IlAkJhMgqZBpE' +
'YS4UiSGQ2E+FglHkdg5haI5pHIVoViYCQeF6vZJhYY4aCWWYqGyGpkimOhnhyZQ4nIToYGcSY+ESFQnHmGhwh+YpphYO4gmKOlEiGKIKBaCohmeQ4tkUQJQBAgI=');
Add(2,'gBFLBCJwBAEHhEJAAEhABO0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDYOMjwlDKEgADDFEgjDBkRxtDCPIDnGQoDi' +
'GI4vSrCQ4zHQkOx9C6NKLjOQaMhwcJPABTZwRRQMUyLAiQRioGKKJgkC4cAxIFhRXSVIyhC6XRiGURbJquLw1DBbEI3BaUOS7HqOK7vCZ7cACVYqQjLMrzCK8ZxLPqbZ' +
'znOjZXoCKJDQzVYADFRVd4rMK9QABWw4YqWZYXX7kUDxbTdEYzPQAMw1GCcbxmF6eWbCNq3LidXTnOK3dwkO55cyuA6oazi8T6Bi2M6DDQNGSzZiuGZ9YSOOIwHJIN4Q' +
'DSUpYmQOoJA6KxVlCDBsnwOx9iWUhfiCThzjUHZun2WgSAiBIUA0JgziGVJkGWUZAkEUoyBEN51BsDYQhCIQJGqHAUCAGBGA0RwtDcVIgkgNgOgOYQIDiXYEmESBWBaB' +
'ZhggTgSgYYZIHYGoDGGaIGBiBpiCiFJdgkIksiiChhliLgsgYYpoj4F4MGMKBWDSDRhngMg4gcIQYnYPoEE6N4ZAMQBAICA=');
end;
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $1000000;
SelForeColor := Color.FromArgb(0,0,0);
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorHeader := $2000000;
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$2);
BackColorSortBar := BackColor;
EndUpdate();
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'RO\CJ|BV|CS';
with get_DefaultView(Nil).View['City'] do
begin
BeginUpdate();
with Columns do
begin
Item['CountryCode'].Visible := False;
with Item['Name'] do
begin
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
Width := 128;
end;
end;
SortBarVisible := True;
AllowGroupBy := True;
SingleSort := False;
Columns.Item['StateCode'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
TreeColumnIndex := Columns.Item['Name'].Index;
EndUpdate();
end;
EndUpdate();
end
|
42
|
How can I group the items

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
// Columns("StateName").SortOrder = 1
// Columns("StateCode").SortOrder = nGroupByIfCity
with AxCascadeTree1 do
begin
nGroupByIfCity := FormatABC('( A = `City`) ? 1 : 0',View.Tag,Nil,Nil);
bColumnAutoResize := FormatABC(' (A = `City`) ? 0 : -1',View.Tag,Nil,Nil);
with View do
begin
BeginUpdate();
SingleSel := False;
Columns.Item['CountryCode'].Visible := False;
Columns.Item['CountryName'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
with Columns.Item[TObject(2)] do
begin
end;
TreeColumnIndex := 2;
AllowGroupBy := True;
SingleSort := False;
SortBarVisible := False;
ColumnAutoResize := False;
EndUpdate();
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with VisualAppearance do
begin
Add(1,'gBFLBCJwBAEHhEJAAEhABa0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDYOMjwlDKEgADDFEgjJBkRxtDCPIDnGQoDi' +
'GI4vSrCQ4yDA8GxCGSfIrjKiYbiGNY8RgZCiOMAFJSpC6gZRoSq4doGGJLQiDMaAdBNHyZKqpbQqeCZPDINQlWzbcrjKKFYQTOi7I4sCbYcqKA5PTbNdYyVBMWxfGIba' +
'IkXAcBjuO4hWbFdASRQdDYtHTIbzjCxLcgMD4gRwWCYNSAGRZJLDKK4gSh6eorHQAX4AGabFBOP5fC7TNJ0OKLRrkAJub5eFx3LJ97ohbLsOzYZK2ByDFqiMLGQZMZxv' +
'GWUBAnYfJImcOwLEiBp0gaGpekSBxjE+WZ2jse5Im2S5ZkGYhdn4EY6A4Q4vAOWJ6H0V4oEgIgSFAGhGDGUB1ByBhVBUAwyhKMQIE2AgRjCWQJAoEIWk2SxCAGBBghQe' +
'JYkMZIYBYIYoHIG4HGICB+CKB4iEiBglgaUAzhiJAZA+Q4Qk2CxiniOgwgyYwolYMYNmMQw2CoGQihiLg5g+YxpAIOINiOOJ2CyEBkgkDhKhCJBQAI2IlAkJhMgqZBpE' +
'YS4UiSGQ2E+FglHkdg5haI5pHIVoViYCQeF6vZJhYY4aCWWYqGyGpkimOhnhyZQ4nIToYGcSY+ESFQnHmGhwh+YpphYO4gmKOlEiGKIKBaCohmeQ4tkUQJQBAgI=');
Add(2,'gBFLBCJwBAEHhEJAAEhABO0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDYOMjwlDKEgADDFEgjDBkRxtDCPIDnGQoDi' +
'GI4vSrCQ4zHQkOx9C6NKLjOQaMhwcJPABTZwRRQMUyLAiQRioGKKJgkC4cAxIFhRXSVIyhC6XRiGURbJquLw1DBbEI3BaUOS7HqOK7vCZ7cACVYqQjLMrzCK8ZxLPqbZ' +
'znOjZXoCKJDQzVYADFRVd4rMK9QABWw4YqWZYXX7kUDxbTdEYzPQAMw1GCcbxmF6eWbCNq3LidXTnOK3dwkO55cyuA6oazi8T6Bi2M6DDQNGSzZiuGZ9YSOOIwHJIN4Q' +
'DSUpYmQOoJA6KxVlCDBsnwOx9iWUhfiCThzjUHZun2WgSAiBIUA0JgziGVJkGWUZAkEUoyBEN51BsDYQhCIQJGqHAUCAGBGA0RwtDcVIgkgNgOgOYQIDiXYEmESBWBaB' +
'ZhggTgSgYYZIHYGoDGGaIGBiBpiCiFJdgkIksiiChhliLgsgYYpoj4F4MGMKBWDSDRhngMg4gcIQYnYPoEE6N4ZAMQBAICA=');
end;
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $1000000;
SelForeColor := Color.FromArgb(0,0,0);
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorHeader := $2000000;
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$2);
BackColorSortBar := BackColor;
EndUpdate();
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'RO\CJ|BV|CS';
EndUpdate();
end
|
41
|
How can I change the visual appearance of the selection/header

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
// Columns("StateName").SortOrder = 1
with AxCascadeTree1 do
begin
with View do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
Columns.Item['CountryName'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
with Columns.Item['Name'] do
begin
end;
EndUpdate();
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with VisualAppearance do
begin
Add(1,'gBFLBCJwBAEHhEJAAEhABWYDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADCNAwgFBIcBhE4ZIKkEYoMiONoYR5Ac4yFA' +
'cQxHE6TZRgeDZToWN48TZLEB0VRFGL1J4AKbfKKKBiqIZDTpMdKSHIIFQ4BiEaYkGjqQpKVIdDSJMwWTI4ahhNSEbauCZ7DhyXpLUbeNSyXJsXw7GSOZJvGZ5bjuIY+R' +
'xQEK1NQkOyNOiOAosGCQWiDE4DWZZUT3XS+HgAGStY4rWCcSgOYIDZTPOT1DYtIY3NC5c7tS4bPq3NZHXTAeigBa4AZTQafcTvSA5OjOQQ2VhNWIXRxgAZ3YCNbzpTgs' +
'HeD5DmUQh3jSTQ/DuIZBh0bJ8BsG4WlsYwXjEapphuXh/HsRQJAQQhKAaEwZlCahyDKchJlEIgRDedQbA2EIQiECR3BudAgBgRgBgSHZQFSCwzECV4DGCeA6BCBJhCgV' +
'gRgWs4YkgNJKCOMJ2C0T4Dn4IIIiIGIOCaCRiy0HQ9iGIxMhgMAMmKZJ2D+SQThININgiM4In+DhPnIDJhD+RxzgCfwaE2c58F0N4PniSJ/guTJiCiOAygwCJODyDwIF' +
'ifhVD+R5JBQcIREYOQgFgNwPnkRJ/qOIgIjEMYMFOVg9hESA5BQfYSCbQx1DcZA5lAXQ2vURh4hoT55hiRgfEqYwMkUPQPnGahgiGJwpmAdYeAaWZgGINoPnEWoQBKaQ' +
'KAyf4gAwMZoisMIMGOTJ/B0KQK0EG5NhqDolBmKhRG6JQUX8GJYD+aZaBaGweAqEwEkYPNpDaL4u2kIJXi8a5xgKPwViucQuj8EBrnqXJ/i0DARlyJwwCyIYglaLxtDG' +
'DpVjSRY7EwUY0kQexMD+MhrgsOJAB2LJzCKOAZG0O4gn8GANFuLptBaLpREKUwRG0MJylOOYPnuEpjjOTIamAYo7G/QxfDUMAsBAWI7ESe40ZuQ5bjafY+GycZcigMBO' +
'DOZJ/CoTo8F8GZGDGI58iaRhKEwZIhkYSZ8GcFYQVeZIqDCThsFiMQ7g+fI8n8LAOlyTw1CuMxSjMNQqHMUojDWSxPnyKJDB8CpjBSag+iSE4/EmUpLh0KI2lKCxNCiM' +
'vkg0KxHhYNBSACMQyA6c5wn8MJrg2Axflga4DAaOAviuApyjgLorg0dJ/laDICAyNQyg8LR47INxznzfI3jOPkS4NQMDzCoPgMQUBNqzFyJAco0ROLRFOPkVIEB4v7FW' +
'BAeT/xTB7E+OYR4MAzjzAMG8GIxgPj8CSJwIolxjCJTeB8cw7hIjVDqD0LwkA3BpAMNYFgbAxDGF8C0aYxw+gpA8GEeI/QgjJFeHcc4/xBjggePEYgfRPjnAOJAN4+QD' +
'jHCiN0TQhBMiODWOkA4+RqjGH0P4W4sRjCdB4GkaIxhOD6HiM0V4ehfCRFcEsDIZhkjcD4J8PwQR/j3D8Acf43x8h+B+Jkf49RPh/CCLIVIEwTBxFsP8L4+x/CAAgA4A' +
'IQAsADACMoSA6wghEAYIAQBAQA==');
Add(2,'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');
end;
(GetOcx() as EXCASCADETREELib.CascadeTree).SelBackColor := $1000000;
SelForeColor := Color.FromArgb(0,0,0);
(GetOcx() as EXCASCADETREELib.CascadeTree).BackColorHeader := $2000000;
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$2);
BackColorSortBar := BackColor;
EndUpdate();
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'RO\CJ';
EndUpdate();
end
|
40
|
How can I format a column so it display its content in a different way
// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
with AxCascadeTree1 do
begin
with View do
begin
BeginUpdate();
ContinueColumnScroll := False;
ScrollBySingleLine := True;
DrawGridLines := EXCASCADETREELib.GridLinesEnum.exAllLines;
EnsureVisibleColumn('Date');
Columns.Item['CountryCode'].Visible := False;
with Columns.Item['Date'] do
begin
end;
with Columns.Item['Function'] do
begin
end;
with Columns.Item['Coordinates'] do
begin
end;
with Columns.Item['Status'] do
begin
end;
EndUpdate();
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
FitCascadeColumns := 7;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
ScrollWidth := 4;
ScrollHeight := 4;
Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' +
'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' +
'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' +
'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\OR';
EndUpdate();
end
|
39
|
How can I add a position column

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
with (Columns.Add('Pos') as EXCASCADETREELib.Column) do
begin
Width := 32;
AllowSizing := False;
Position := 0;
FormatColumn := '1 pos ``';
Def[EXCASCADETREELib.DefColumnEnum.exCellBackColor] := TObject(15790320);
Alignment := EXCASCADETREELib.AlignmentEnum.RightAlignment;
HeaderAlignment := Alignment;
Def[EXCASCADETREELib.DefColumnEnum.exCellPaddingRight] := TObject(2);
Def[EXCASCADETREELib.DefColumnEnum.exCellPaddingLeft] := TObject(2);
Def[EXCASCADETREELib.DefColumnEnum.exHeaderPaddingLeft] := TObject(2);
Def[EXCASCADETREELib.DefColumnEnum.exHeaderPaddingRight] := TObject(2);
end;
CountLockedColumns := 1;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\IA';
EndUpdate();
end
|
38
|
How can I display icons or images

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
EnsureVisibleColumn('Function');
with Columns.Item['Function'] do
begin
end;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' +
'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' +
'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' +
'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\MN';
EndUpdate();
end
|
37
|
How can I turn-on the control's status bar

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
StatusBarLabel := FormatABC('`<b>` + ( value replace `\\` with ` </b><font ;6><off 4>` )',TObject(Name),Nil,Nil);
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
StatusBarLabel := FormatABC('`<b>` + ( value replace `\\` with ` </b><font ;6><off 4>` )',TObject(Name),Nil,Nil);
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarHeight := 24;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Name := 'Romania\Cluj\Baciu*';
EndUpdate();
end
|
36
|
How can I disable incremental searching
// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.AutoSearch := False;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
35
|
ScrollBar extension

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
with AxCascadeTree1 do
begin
with View do
begin
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$2);
EndUpdate();
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
get_DefaultView(Nil).Columns.Item['CountryName'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
get_DefaultView(Nil).NextView.Columns.Item['StateName'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
with get_DefaultView(Nil).NextView.NextView do
begin
ColumnAutoResize := False;
with Columns.Item['Name'] do
begin
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
Width := 128;
end;
with Items do
begin
SelectItem[FindItem['Anchorage','Name',Nil]] := True;
end;
end;
EndUpdate();
end
|
34
|
How can I access the next/prev/parent/child view

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
with AxCascadeTree1 do
begin
with View do
begin
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitEqualCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'RO\CJ';
get_DefaultView(Nil).Columns.Item['CountryName'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
get_DefaultView(Nil).NextView.Columns.Item['StateName'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
with get_DefaultView(Nil).NextView.NextView do
begin
BeginUpdate();
ColumnAutoResize := False;
with Columns.Item['Name'] do
begin
Width := 128;
SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
end;
SingleSort := False;
AllowGroupBy := True;
Columns.Item['Status'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortDescending;
TreeColumnIndex := Columns.Item['Name'].Index;
EndUpdate();
end;
EndUpdate();
end
|
33
|
Predefined Keywords of ShowContextMenu property

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
with AxCascadeTree1 do
begin
with View do
begin
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
end;
StatusBarLabel := FormatABC('`<b>` + ( value replace `\\` with ` </b><font ;6><off 4>` )',TObject(Name),Nil,Nil);
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
StatusBarLabel := FormatABC('`<b>` + ( value replace `\\` with ` </b><font ;6><off 4>` )',TObject(Name),Nil,Nil);
ExecuteContextMenu := 0;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
AllowSplitView := EXCASCADETREELib.AllowSplitViewEnum.exAllowOneSplitView;
FitCascadeColumns := 3;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitEqualCascadeMode;
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarHeight := 24;
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exVScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exHScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
set_ScrollPartVisible(EXCASCADETREELib.ScrollBarEnum.exScroll,EXCASCADETREELib.ScrollPartEnum.exExtentThumbPart,True);
ScrollWidth := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack,$f0f0f0);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb,$808080);
ScrollHeight := 4;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSBack,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSThumb,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSThumb));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exScrollSizeGrip,get_Background(EXCASCADETREELib.BackgroundPartEnum.exVSBack));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exCSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exHSplitBar,get_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar));
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBarSize,$2);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
ShowContextMenu := '`vlevels=` + vlevels + `,vlevel=` + vlevel + `,hlevels=` + hlevels + `,hlevel=` + hlevel + `,view=` + view ';
SplitViewHeight := '256';
EndUpdate();
end
|
32
|
How can I display the identifiers of the control's context menu (debug)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
with AxCascadeTree1 do
begin
with View do
begin
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( ExecuteContextMenu );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
ShowContextMenu := '[debug]Popup(Item 1[id=1001],Item 2[id=1002],Item 3[id=1003]),[sep],Exit[def][id=1000]';
EndUpdate();
end
|
31
|
ShowContextMenu usage

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
with AxCascadeTree1 do
begin
with View do
begin
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( ExecuteContextMenu );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
ShowContextMenu := 'Popup(Item 1[id=1001],Item 2[id=1002],Item 3[id=1003]),[sep],Exit[def][id=1000]';
EndUpdate();
end
|
30
|
How can I resize automatically all views, when the control is resized

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
with AxCascadeTree1 do
begin
with View do
begin
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := Integer(EXCASCADETREELib.CascadeModeEnum.exAutoFitOnResizeClient) Or Integer(EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode);
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
29
|
How can I hide some columns

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
// Columns("StateCode").Visible = False
with AxCascadeTree1 do
begin
with View do
begin
ColumnAutoResize := True;
Columns.Item['CountryCode'].Visible := False;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
28
|
Is it possible to disable resizing the cascade columns

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.ColumnAutoResize := True;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
Mode := Integer(EXCASCADETREELib.CascadeModeEnum.exAutoFitOnResizeClient) Or Integer(EXCASCADETREELib.CascadeModeEnum.exDisableResizeCascadeColumns) Or Integer(EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
27
|
SplitFixCascadeMode Mode

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
26
|
FixCascadeMode Mode

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DefColumnWidth := 96;
Mode := EXCASCADETREELib.CascadeModeEnum.exFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
25
|
SplitEqualCascadeMode Mode

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitEqualCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
24
|
Default Mode

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
set_Background(EXCASCADETREELib.BackgroundPartEnum.exSplitBar,$c4c4c4);
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
23
|
SingleCascadeMode ( single-view )

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with get_DefaultView(Nil) do
begin
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Cities Where CountryCode = ''RO'' ';
AllowGroupBy := True;
SortBarVisible := True;
Columns.Item['StateCode'].SortOrder := EXCASCADETREELib.SortOrderEnum.SortAscending;
Name := 'Name';
end;
Name := 'Isaccea';
EndUpdate();
end
|
22
|
How can I display the current selection, as a path

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
StatusBarLabel := Name;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
StatusBarLabel := Name;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
21
|
How can I add multiple-views to the control

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitFixCascadeMode;
DataSource := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Cou' +
'ntry;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName' +
';Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * ' +
'FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name';
Select := 'US\AK';
EndUpdate();
end
|
20
|
I wish I select items based on names, rather than keys. Is that possible

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
View.ColumnAutoResize := False;
label := FormatABC('`<b>Select = </b>` + value',TObject(Select),Nil,Nil);
label := FormatABC('A + `<br>` + `<b>Name = </b>` + B replace `|` with ` `',TObject(label),TObject(Name),Nil);
StatusBarLabel := label;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
label := FormatABC('`<b>Select = </b>` + value',TObject(Select),Nil,Nil);
label := FormatABC('A + `<br>` + `<b>Name = </b>` + B replace `|` with ` `',TObject(label),TObject(Name),Nil);
StatusBarLabel := label;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitEqualCascadeMode;
StatusBarVisible := Integer(EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarWordWrap) Or Integer(EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop);
ds := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb';
dm1 := 'Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName';
ds := FormatABC('A + `;` + B',TObject(ds),TObject(dm1),Nil);
dm2 := 'Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Sele' +
'ct * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name';
ds := FormatABC('A + ` >>> ` + B',TObject(ds),TObject(dm2),Nil);
dm3 := 'Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=Cit' +
'y;Name=Name';
ds := FormatABC('A + ` >>> ` + B',TObject(ds),TObject(dm3),Nil);
DataSource := TObject(ds);
Name := 'Romania\Cluj\Baciu*';
EndUpdate();
end
|
19
|
I've noticed that I can't select multiple items. How can I do that

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
bColumnAutoResize := FormatABC('not(A = `City`)',View.Tag,Nil,Nil);
with View do
begin
SingleSel := False;
ColumnAutoResize := False;
end;
label := FormatABC('`<b>Select = </b>` + value',TObject(Select),Nil,Nil);
label := FormatABC('A + `<br>` + `<b>Name = </b>` + B replace `|` with ` `',TObject(label),TObject(Name),Nil);
StatusBarLabel := label;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
label := FormatABC('`<b>Select = </b>` + value',TObject(Select),Nil,Nil);
label := FormatABC('A + `<br>` + `<b>Name = </b>` + B replace `|` with ` `',TObject(label),TObject(Name),Nil);
StatusBarLabel := label;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitEqualCascadeMode;
StatusBarVisible := Integer(EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarWordWrap) Or Integer(EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop);
StatusBarHeight := 48;
ds := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb';
dm1 := 'Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName';
ds := FormatABC('A + `;` + B',TObject(ds),TObject(dm1),Nil);
dm2 := 'Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Sele' +
'ct * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name';
ds := FormatABC('A + ` >>> ` + B',TObject(ds),TObject(dm2),Nil);
dm3 := 'Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=Cit' +
'y;Name=Name';
ds := FormatABC('A + ` >>> ` + B',TObject(ds),TObject(dm3),Nil);
DataSource := TObject(ds);
Select := 'RO\CJ|D*';
EndUpdate();
end
|
18
|
How do I programmatically selects a path/item

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
bColumnAutoResize := FormatABC('not(A = `City`)',View.Tag,Nil,Nil);
View.ColumnAutoResize := False;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
StatusBarLabel := AxCascadeTree1.Select;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSplitEqualCascadeMode;
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorBottom;
ds := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb';
dm1 := 'Member=Select * FROM Countries;Key=CountryCode;Tag=Country';
ds := FormatABC('A + `;` + B',TObject(ds),TObject(dm1),Nil);
dm2 := 'Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Tag=State ||| Member=Select * FROM Citie' +
's WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City';
ds := FormatABC('A + ` >>> ` + B',TObject(ds),TObject(dm2),Nil);
dm3 := 'Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=Cit' +
'y';
ds := FormatABC('A + ` >>> ` + B',TObject(ds),TObject(dm3),Nil);
DataSource := TObject(ds);
Select := 'RO\CJ';
EndUpdate();
end
|
17
|
DataSource/DataMember/Key/Tag

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
StatusBarLabel := FormatABC('value replace `data source` with `<b><fgcolor=808080>Source</fgcolor></b>` replace `Source` with `<b><fgcolor=808080>Source</fgc' +
'olor></b>` replace `Member` with `<b><fgcolor=808080>Member</fgcolor></b>` replace `Key` with `<b><fgcolor=808080>Key</fgcolor><' +
'/b>` replace `Tag` with `<b><fgcolor=808080>Tag</fgcolor></b>` replace `;` with `;<br>`',View.DataSource,Nil,Nil);
bColumnAutoResize := FormatABC('not(A = `City`)',View.Tag,Nil,Nil);
nWidth := FormatABC('A = `City` ? B : C',View.Tag,View.WidthToFit,View.Width);
with View do
begin
ColumnAutoResize := False;
Width := nWidth;
end;
end
end;
// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarHeight := 58;
StatusBarVisible := Integer(EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarWordWrap) Or Integer(EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop);
ds := 'Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb';
dm1 := 'Member=Select * FROM Countries;Key=CountryCode;Tag=Country';
ds := FormatABC('A + `;` + B',TObject(ds),TObject(dm1),Nil);
dm2 := 'Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Tag=State ||| Member=Select * FROM Citie' +
's WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City';
ds := FormatABC('A + ` >>> ` + B',TObject(ds),TObject(dm2),Nil);
dm3 := 'Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=Cit' +
'y';
ds := FormatABC('A + ` >>> ` + B',TObject(ds),TObject(dm3),Nil);
DataSource := TObject(ds);
EndUpdate();
end
|
16
|
DataSource (view, data source, data member, ACCDB)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could "Data Source=...;Data Member=..." or "Source=...;Member=..." ';
DefColumnWidth := 336;
ds := 'Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb';
dm := 'Data Member=Select * FROM Countries';
with get_DefaultView(Nil) do
begin
DataSource := AxCascadeTree1.FormatABC('A + `;` + B',TObject(ds),TObject(dm),Nil);
ColumnAutoResize := True;
end;
EndUpdate();
end
|
15
|
DataSource (view, data source, data member, MDB)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could "Data Source=...;Data Member=..." or "Source=...;Member=..." ';
DefColumnWidth := 336;
ds := 'Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb';
dm := 'Data Member=Select * FROM Countries';
with get_DefaultView(Nil) do
begin
DataSource := AxCascadeTree1.FormatABC('A + `;` + B',TObject(ds),TObject(dm),Nil);
ColumnAutoResize := True;
end;
EndUpdate();
end
|
14
|
DataSource (view, ADODB, ACCDB)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be string (Source/Member), ADO or DAO objects';
DefColumnWidth := 336;
ado := (ComObj.CreateComObject(ComObj.ProgIDToClassID('ADODB.Recordset')) as ADODB.Recordset);
with ado do
begin
Open('Countries','Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb',3,3,Nil);
end;
with get_DefaultView(Nil) do
begin
DataSource := (ado as ADODB.Recordset);
ColumnAutoResize := True;
end;
EndUpdate();
end
|
13
|
DataSource (view, ADODB, MDB)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be string (Source/Member), ADO or DAO objects';
DefColumnWidth := 336;
ado := (ComObj.CreateComObject(ComObj.ProgIDToClassID('ADODB.Recordset')) as ADODB.Recordset);
with ado do
begin
Open('Countries','Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb',3,3,Nil);
end;
with get_DefaultView(Nil) do
begin
DataSource := (ado as ADODB.Recordset);
ColumnAutoResize := True;
end;
EndUpdate();
end
|
12
|
DataSource (control, data source, data member, ACCDB)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could "Data Source=...;Data Member=..." or "Source=...;Member=..." ';
DefColumnWidth := 336;
ds := 'Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb';
dm := 'Data Member=Select * FROM Countries';
DataSource := FormatABC('A + `;` + B',TObject(ds),TObject(dm),Nil);
View.ColumnAutoResize := True;
EndUpdate();
end
|
11
|
DataSource (control, data source, data member, MDB)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could "Data Source=...;Data Member=..." or "Source=...;Member=..." ';
DefColumnWidth := 336;
ds := 'Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb';
dm := 'Data Member=Select * FROM Countries';
DataSource := FormatABC('A + `;` + B',TObject(ds),TObject(dm),Nil);
View.ColumnAutoResize := True;
EndUpdate();
end
|
10
|
DataSource (control, ADODB, ACCDB)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be string (Source/Member), ADO or DAO objects';
DefColumnWidth := 336;
ado := (ComObj.CreateComObject(ComObj.ProgIDToClassID('ADODB.Recordset')) as ADODB.Recordset);
with ado do
begin
Open('Countries','Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb',3,3,Nil);
end;
DataSource := (ado as ADODB.Recordset);
View.ColumnAutoResize := True;
EndUpdate();
end
|
9
|
DataSource (control, ADODB, MDB)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be string (Source/Member), ADO or DAO objects';
DefColumnWidth := 336;
ado := (ComObj.CreateComObject(ComObj.ProgIDToClassID('ADODB.Recordset')) as ADODB.Recordset);
with ado do
begin
Open('Countries','Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb',3,3,Nil);
end;
DataSource := (ado as ADODB.Recordset);
View.ColumnAutoResize := True;
EndUpdate();
end
|
8
|
DataSource (view, XMLDOMDocument)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be a XML file name, a URL, an IStream, an IXMLDOMDocument';
DefColumnWidth := 336;
with get_DefaultView(Nil) do
begin
xml := (ComObj.CreateComObject(ComObj.ProgIDToClassID('MSXML.DOMDocument')) as MSXML2.FreeThreadedDOMDocument30);
with xml do
begin
load('C:\Program Files\Exontrol\ExCascadeTree\Sample\Testing.xml');
end;
DataSource := (xml as MSXML2.FreeThreadedDOMDocument30);
ColumnAutoResize := True;
end;
EndUpdate();
end
|
7
|
DataSource (view, XML, file)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be a XML file name, a URL, an IStream, an IXMLDOMDocument';
DefColumnWidth := 336;
with get_DefaultView(Nil) do
begin
DataSource := 'http://www.exontrol.net/testing.xml';
ColumnAutoResize := True;
end;
EndUpdate();
end
|
6
|
DataSource (control, XMLDOMDocument)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be a XML file name, a URL, an IStream, an IXMLDOMDocument';
DefColumnWidth := 336;
xml := (ComObj.CreateComObject(ComObj.ProgIDToClassID('MSXML.DOMDocument')) as MSXML2.FreeThreadedDOMDocument30);
with xml do
begin
load('C:\Program Files\Exontrol\ExCascadeTree\Sample\Testing.xml');
end;
DataSource := (xml as MSXML2.FreeThreadedDOMDocument30);
View.ColumnAutoResize := True;
EndUpdate();
end
|
5
|
DataSource (control, XML, file)

// Error event - An internal error occurs.
procedure TWinForm1.AxCascadeTree1_Error(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ErrorEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Error' );
OutputDebugString( e.description );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
StatusBarVisible := EXCASCADETREELib.StatusBarAnchorEnum.exStatusBarAnchorTop;
StatusBarLabel := '<b>DataSource</b> could be a XML file name, a URL, an IStream, an IXMLDOMDocument';
DefColumnWidth := 336;
DataSource := 'http://www.exontrol.net/testing.xml';
View.ColumnAutoResize := True;
EndUpdate();
end
|
4
|
How can I get the selected items (sample 1)

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
k := ParentView.Value[Nil];
BeginUpdate();
ColumnAutoResize := True;
Key := TObject(-1);
Columns.Add(k);
with Items do
begin
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 1`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 2`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 3`',TObject(k),Nil,Nil));
end;
EndUpdate();
end;
end
end;
// ViewEndChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewEndChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewEndChangingEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'End' );
OutputDebugString( e.operation );
with View.Items do
begin
OutputDebugString( 'FocusItem' );
OutputDebugString( CellCaption[TObject(FocusItem),TObject(0)] );
OutputDebugString( 'SelectedItem' );
OutputDebugString( CellCaption[TObject(SelectedItem[0]),TObject(0)] );
end;
end
end;
// ViewStartChanging event - Occurs once the user is about to change the view.
procedure TWinForm1.AxCascadeTree1_ViewStartChanging(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_ViewStartChangingEvent);
begin
with AxCascadeTree1 do
begin
OutputDebugString( 'Start' );
OutputDebugString( e.operation );
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with View do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Add('Default');
Key := TObject(0);
LinesAtRoot := EXCASCADETREELib.LinesAtRootEnum.exLinesAtRoot;
with Items do
begin
AddItem('Item A');
SelectItem[AddItem('Item B')] := True;
AddItem('Item C');
end;
EndUpdate();
end;
EndUpdate();
end
|
3
|
Can I use this control as a simple tree

with AxCascadeTree1 do
begin
BeginUpdate();
Mode := EXCASCADETREELib.CascadeModeEnum.exSingleCascadeMode;
with View do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Add('Default');
Key := TObject(-1);
LinesAtRoot := EXCASCADETREELib.LinesAtRootEnum.exLinesAtRoot;
with Items do
begin
AddItem('Item A');
InsertItem(AddItem('Item B'),Nil,'Child');
AddItem('Item C');
end;
EndUpdate();
end;
EndUpdate();
end
|
2
|
How can I use this control

// CreateView event - A view has been created.
procedure TWinForm1.AxCascadeTree1_CreateView(sender: System.Object; e: AxEXCASCADETREELib._ICascadeTreeEvents_CreateViewEvent);
begin
with AxCascadeTree1 do
begin
with View do
begin
k := ParentView.Value[Nil];
BeginUpdate();
ColumnAutoResize := True;
Columns.Add(k);
with Items do
begin
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 1`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 2`',TObject(k),Nil,Nil));
AddItem(AxCascadeTree1.FormatABC('A + `-> Sub-Item 3`',TObject(k),Nil,Nil));
end;
EndUpdate();
end;
end
end;
with AxCascadeTree1 do
begin
BeginUpdate();
with View do
begin
BeginUpdate();
ColumnAutoResize := True;
Columns.Add('Default');
Key := TObject(0);
with Items do
begin
AddItem('Item A');
SelectItem[AddItem('Item B')] := True;
AddItem('Item C');
end;
EndUpdate();
end;
EndUpdate();
end
|
1
|
How do I change the control's background color
with AxCascadeTree1 do
begin
BackColor := Color.FromArgb(240,240,240);
end
|