668:
Is it possible to change the caption from a column without to remove the column and add it with the new caption

IColumn{oDCOCX_Exontrol1:Columns:Add("ColumnName")}:Caption := "NewName"
IColumn{oDCOCX_Exontrol1:Columns:Add("ColumnName")}:HTMLCaption := "<b>New</b>Name"

667:
FilterBarCaption ALL Keyword ( sample 2, result )

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local i as USUAL
	i := oDCOCX_Exontrol1:FormatABC("value + 1",oDCOCX_Exontrol1:Items:[ItemToIndex,Item],nil,nil)
	oDCOCX_Exontrol1:Items:[CellImage,Item,3] := i
RETURN NIL

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}
	var_Column2:[Def,exCellHasCheckBox] := true
	var_Column2:DisplayFilterButton := true
	var_Column2:DisplayFilterPattern := false
	var_Column2:FilterType := exCheck
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Image")}
	var_Column3:DisplayFilterButton := true
	var_Column3:FilterType := exImage
	var_Column3:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column4:AllowSizing := false
	var_Column4:AllowSort := false
	var_Column4:Width := 32
	var_Column4:FormatColumn := "1 apos ``"
	var_Column4:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	h := var_Items:AddItem("Item B")
	var_Items:[CellCaption,h,1] := "Sub-Item B"
	var_Items:[CellState,h,2] := 1
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "(( ( all 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>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarVisible | exFilterBarPromptVisible
var_Column5 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column5:FilterType := exFilter
	var_Column5:Filter := "Item A|Item B"
oDCOCX_Exontrol1:Columns:[Item,2]:Filter := AsString(1)
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

666:
FilterBarCaption ALL Keyword ( sample 1 )

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local i as USUAL
	i := oDCOCX_Exontrol1:FormatABC("value + 1",oDCOCX_Exontrol1:Items:[ItemToIndex,Item],nil,nil)
	oDCOCX_Exontrol1:Items:[CellImage,Item,3] := i
RETURN NIL

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}
	var_Column2:[Def,exCellHasCheckBox] := true
	var_Column2:DisplayFilterButton := true
	var_Column2:DisplayFilterPattern := false
	var_Column2:FilterType := exCheck
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Image")}
	var_Column3:DisplayFilterButton := true
	var_Column3:FilterType := exImage
	var_Column3:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column4:AllowSizing := false
	var_Column4:AllowSort := false
	var_Column4:Width := 32
	var_Column4:FormatColumn := "1 apos ``"
	var_Column4:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	h := var_Items:AddItem("Item B")
	var_Items:[CellCaption,h,1] := "Sub-Item B"
	var_Items:[CellState,h,2] := 1
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "all"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarVisible | exFilterBarPromptVisible
var_Column5 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column5:FilterType := exFilter
	var_Column5:Filter := "Item A|Item B"
oDCOCX_Exontrol1:Columns:[Item,2]:Filter := AsString(1)
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

665:
FilterBarCaption ALLUI Keyword ( sample 2, result )

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local i as USUAL
	i := oDCOCX_Exontrol1:FormatABC("value + 1",oDCOCX_Exontrol1:Items:[ItemToIndex,Item],nil,nil)
	oDCOCX_Exontrol1:Items:[CellImage,Item,3] := i
RETURN NIL

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}
	var_Column2:[Def,exCellHasCheckBox] := true
	var_Column2:DisplayFilterButton := true
	var_Column2:DisplayFilterPattern := false
	var_Column2:FilterType := exCheck
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Image")}
	var_Column3:DisplayFilterButton := true
	var_Column3:FilterType := exImage
	var_Column3:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column4:AllowSizing := false
	var_Column4:AllowSort := false
	var_Column4:Width := 32
	var_Column4:FormatColumn := "1 apos ``"
	var_Column4:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	h := var_Items:AddItem("Item B")
	var_Items:[CellCaption,h,1] := "Sub-Item B"
	var_Items:[CellState,h,2] := 1
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1: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>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarVisible | exFilterBarPromptVisible
var_Column5 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column5:FilterType := exFilter
	var_Column5:Filter := "Item A|Item B"
oDCOCX_Exontrol1:Columns:[Item,2]:Filter := AsString(1)
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

664:
FilterBarCaption ALLUI Keyword ( sample 1 )

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local i as USUAL
	i := oDCOCX_Exontrol1:FormatABC("value + 1",oDCOCX_Exontrol1:Items:[ItemToIndex,Item],nil,nil)
	oDCOCX_Exontrol1:Items:[CellImage,Item,3] := i
RETURN NIL

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}
	var_Column2:[Def,exCellHasCheckBox] := true
	var_Column2:DisplayFilterButton := true
	var_Column2:DisplayFilterPattern := false
	var_Column2:FilterType := exCheck
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Image")}
	var_Column3:DisplayFilterButton := true
	var_Column3:FilterType := exImage
	var_Column3:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column4:AllowSizing := false
	var_Column4:AllowSort := false
	var_Column4:Width := 32
	var_Column4:FormatColumn := "1 apos ``"
	var_Column4:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	h := var_Items:AddItem("Item B")
	var_Items:[CellCaption,h,1] := "Sub-Item B"
	var_Items:[CellState,h,2] := 1
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "allui"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarVisible | exFilterBarPromptVisible
var_Column5 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column5:FilterType := exFilter
	var_Column5:Filter := "Item A|Item B"
oDCOCX_Exontrol1:Columns:[Item,2]:Filter := AsString(1)
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

663:
FilterBarCaption AVAILABLE Keyword ( sample 2, result )

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local i as USUAL
	i := oDCOCX_Exontrol1:FormatABC("value + 1",oDCOCX_Exontrol1:Items:[ItemToIndex,Item],nil,nil)
	oDCOCX_Exontrol1:Items:[CellImage,Item,3] := i
RETURN NIL

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}
	var_Column2:[Def,exCellHasCheckBox] := true
	var_Column2:DisplayFilterButton := true
	var_Column2:DisplayFilterPattern := false
	var_Column2:FilterType := exCheck
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Image")}
	var_Column3:DisplayFilterButton := true
	var_Column3:FilterType := exImage
	var_Column3:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column4:AllowSizing := false
	var_Column4:AllowSort := false
	var_Column4:Width := 32
	var_Column4:FormatColumn := "1 apos ``"
	var_Column4:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	h := var_Items:AddItem("Item B")
	var_Items:[CellCaption,h,1] := "Sub-Item B"
	var_Items:[CellState,h,2] := 1
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "(( ( value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>` ) + ` ` + ( available replace `[` with `<bgcolor=C0C0C0><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>` replace `<s>` with `` replace `</s>` with `` ) + `<fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<r><fgcolor=808080>`+ itemcount + ` item(s)`) )))"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarVisible | exFilterBarPromptVisible
var_Column5 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column5:FilterType := exFilter
	var_Column5:Filter := "Item A|Item B"
oDCOCX_Exontrol1:Columns:[Item,2]:Filter := AsString(1)
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

662:
FilterBarCaption AVAILABLE Keyword ( sample 1 )

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local i as USUAL
	i := oDCOCX_Exontrol1:FormatABC("value + 1",oDCOCX_Exontrol1:Items:[ItemToIndex,Item],nil,nil)
	oDCOCX_Exontrol1:Items:[CellImage,Item,3] := i
RETURN NIL

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}
	var_Column2:[Def,exCellHasCheckBox] := true
	var_Column2:DisplayFilterButton := true
	var_Column2:DisplayFilterPattern := false
	var_Column2:FilterType := exCheck
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Image")}
	var_Column3:DisplayFilterButton := true
	var_Column3:FilterType := exImage
	var_Column3:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column4:AllowSizing := false
	var_Column4:AllowSort := false
	var_Column4:Width := 32
	var_Column4:FormatColumn := "1 apos ``"
	var_Column4:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	h := var_Items:AddItem("Item B")
	var_Items:[CellCaption,h,1] := "Sub-Item B"
	var_Items:[CellState,h,2] := 1
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "value + ` ` + available"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarVisible | exFilterBarPromptVisible
var_Column5 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column5:FilterType := exFilter
	var_Column5:Filter := "Item A|Item B"
oDCOCX_Exontrol1:Columns:[Item,2]:Filter := AsString(1)
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

661:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 3, results )

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column2:AllowSizing := false
	var_Column2:AllowSort := false
	var_Column2:Width := 32
	var_Column2:FormatColumn := "1 apos ``"
	var_Column2:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	var_Items:[CellCaption,var_Items:AddItem("Item B"),1] := "Sub-Item B"
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "(`<b>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )) replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarToggle
var_Column3 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column3:FilterType := exFilter
	var_Column3:Filter := "Item A|Item B"
var_Column4 := oDCOCX_Exontrol1:Columns:[Item,1]
	var_Column4:FilterType := exPattern
	var_Column4:Filter := "*B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

660:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 2 )

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column2:AllowSizing := false
	var_Column2:AllowSort := false
	var_Column2:Width := 32
	var_Column2:FormatColumn := "1 apos ``"
	var_Column2:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	var_Items:[CellCaption,var_Items:AddItem("Item B"),1] := "Sub-Item B"
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarToggle
var_Column3 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column3:FilterType := exFilter
	var_Column3:Filter := "Item A|Item B"
var_Column4 := oDCOCX_Exontrol1:Columns:[Item,1]
	var_Column4:FilterType := exPattern
	var_Column4:Filter := "*B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

659:
Is it possible to somehow highlight the column's name different than its filter value in the control's filter bar ( sample 1 )

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-1")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Col-2")}
	var_Column1:DisplayFilterButton := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column2:AllowSizing := false
	var_Column2:AllowSort := false
	var_Column2:Width := 32
	var_Column2:FormatColumn := "1 apos ``"
	var_Column2:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A"),1] := "Sub-Item A"
	var_Items:[CellCaption,var_Items:AddItem("Item B"),1] := "Sub-Item B"
	var_Items:[CellCaption,var_Items:AddItem("Item C"),1] := "Sub-Item C"
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := AsString(oDCOCX_Exontrol1:FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oDCOCX_Exontrol1:[Description,exFilterBarAnd],nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "value replace `[` with `<fgcolor=808080>[` replace `]` with `]</fgcolor>`"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarToggle
var_Column3 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column3:FilterType := exFilter
	var_Column3:Filter := "Item A|Item B"
var_Column4 := oDCOCX_Exontrol1:Columns:[Item,1]
	var_Column4:FilterType := exPattern
	var_Column4:Filter := "*B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

658:
Is it possible to automatically displays the control's filter label to the right

local var_Column,var_Column1,var_Column2 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column1:AllowSizing := false
	var_Column1:AllowSort := false
	var_Column1:Width := 32
	var_Column1:FormatColumn := "1 apos ``"
	var_Column1:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarCaption := "`<r>` + value"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarShowCloseOnRight | exFilterBarToggle
var_Column2 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column2:FilterType := exFilter
	var_Column2:Filter := "Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

657:
How can I get the number of results/items being shown in the control's filter bar (sample 4)

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column1:AllowSizing := false
	var_Column1:AllowSort := false
	var_Column1:Width := 32
	var_Column1:FormatColumn := "1 apos ``"
	var_Column1:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:FilterBarPrompt := AsString(oDCOCX_Exontrol1:FormatABC("`<b>` + value",oDCOCX_Exontrol1:FilterBarPrompt,nil,nil))
oDCOCX_Exontrol1:FilterBarCaption := "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarCompact | exFilterBarShowCloseOnRight | exFilterBarShowCloseIfRequired | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible
oDCOCX_Exontrol1:EndUpdate()

656:
How can I get the number of results being shown in the control's filter bar (sample 3)

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:FilterBarCaption := "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : ``)"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarCompact | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item A|Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

655:
How can I get the number of results being shown in the control's filter bar (sample 2, compact)

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:FilterBarCaption := "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? `<off -4> ` + abs(matchitemcount + 1) + ` result(s)` : ``)"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarCompact | exFilterBarSingleLine | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item A|Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

654:
How can I get the number of results being shown in the control's filter bar (sample 1)

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:FilterBarCaption := "`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item A|Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

653:
FilterBarCaption Predefined Keywords

METHOD OCX_Exontrol1AfterExpandItem(Item) CLASS MainDialog
	// AfterExpandItem event - Fired after an item is expanded (collapsed).
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column,var_Column1,var_Column2 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:DisplayFilterButton := true
	var_Column:DisplayFilterPattern := false
	var_Column:FilterType := exCheck
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column1:AllowSizing := false
	var_Column1:AllowSort := false
	var_Column1:Width := 32
	var_Column1:FormatColumn := "1 apos ``"
	var_Column1:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	h := var_Items:AddItem("Item B")
	var_Items:[CellState,var_Items:InsertItem(h,nil,"Sub-Item B1"),1] := 1
	var_Items:InsertItem(h,nil,"Sub-Item B2")
	var_Items:[ExpandItem,h] := true
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterInclude := exItemsWithChilds
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1: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=808080>` + promptpattern + `</fgcolor>`"
oDCOCX_Exontrol1:FilterBarPromptPattern := "B"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible
var_Column2 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column2:FilterType := exFilter
	var_Column2:Filter := "Item A|Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

652:
I am using filter prompt feature, and also column's filter, just wondering if possible to compact displaying the filter bar so it won't show on multiple lines

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
oDCOCX_Exontrol1:FilterBarFont := oDCOCX_Exontrol1:Font
oDCOCX_Exontrol1:FilterBarCaption := "`<r><i><fgcolor=808080><upline><solidline><sha ;;0>` + value"
oDCOCX_Exontrol1:FilterBarPromptPattern := "B"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarCompact | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item A|Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

651:
Just wondering if it is possible to show the filter bar's close button on the right ( sample 2 )

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarShowCloseOnRight | exFilterBarToggle | exFilterBarPromptVisible
oDCOCX_Exontrol1:FilterBarPrompt := AsString(oDCOCX_Exontrol1:FormatABC("`<r>` + value",oDCOCX_Exontrol1:FilterBarPrompt,nil,nil))
oDCOCX_Exontrol1:EndUpdate()

650:
Just wondering if it is possible to show the filter bar's close button on the right ( sample 1 )

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:RightToLeft := true
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarToggle | exFilterBarPromptVisible
oDCOCX_Exontrol1:EndUpdate()

649:
How can I change the visual appearance of the filter bar's close button (EBN)

local var_Appearance as IAppearance
local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"gBFLBCJwBAEHhEJAAEhABHQDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLOg7IJjyI4/SJAYCydKAWhxIaZKJHCZoEDaTAADCNVAQp6MEIJVbVEI0e79OgBLp/Z7kECIJJAaRjHQdJxGLA8EhtCQhCZteK6SgMKJYXhWQYRXI1JwvMBrWrdQjiOYELQtMKmSZNLYGG4dR5SVJbcYhSYsRRFMoyDIOXYDLKsdYqSpXIThObEGgaPqJYjsUjCMKnR7HVIURrBPC9TBPE69ZgmC6ucKPX51ShKFaBWDZcwFAS+UBuYCAILiEAQGZ1XT8OROicbgJgSTJRlCaZeDsHY7QGR4xkSYp3CaExZAQMgalQYAwjCAAfBANxcA2TgKAUOpDCGFhKg0RpXCwCwDHQHQHEyAIkCkOhbFOGA8A8DohBgRg9AccZcn8EpEjMLI2C2DYxAgQgvAIUIVkoAAPBQDJlECTZ3CCYwDACQwUA8A5MCAWAWDiQi4l8aQOEgLJuBgBgDmYFAzEoIoIl0WALgKYJbBABADAAHgHg8VAMmqCQQDMXABAATYwTmNwBDATJXAiAgjHmNQ5lgQ5QEQEQMmcWg/GwD5ylyNw2gMcJcjsBgBgOQQDDhRpVAMMwnDBFw1B0Ax8D0DxOmmJJIGQTY5hGMAwkwM4CAYLZAmAOJnAqAojiIGg6iieYkmeAYOHaKJDCyCwjH6AoggsQpQliAJLhgaJ0CESBTnyDwjk+cg4g4P5IHIHJ+BWRRzlYWAxiOUxihsY4KjKLJRGqC44FCegkkkM58iAKAPnIWIWD8SRSFSfQnkmewUhYP4GiGKJ7G0TIbCSUoggqUo0lAQ4LnEcBcD8Coiiif4nE+eAAn2HpOkcFJqi4T5SkyMw/kqQown8IBIBOdA+A+DJrBqVxXEqYo4lCApLhGHBnD8S4ymyfxmg+cwQkQP5egOUZIWoEAkjIeIPBMBJBD+TBjBifwvkuc58hQJQPmFrYykkchclSApKjGOBuD+TRDFCfw3mmIxNi8FxFlOXhVC4aYDFyPgvg2YBcBcLZGCGCJ0DSLRzGSWQ/lmY5+mEP5gmMDBZRSMRsFsOxMhMJJ/DsTpTnwaQaE+N5ojuNhdEYNI5C4TZJO1GRDmCaxnA2Yx4n8IpIjOTBQBQC5TgyYw7gUYRYikC0BYRwsDQBoB8eA6Q2hsE0BUXgywZtYCyHMKwnxSAhAQHkIQhRrBaDsCwA4ERiB2EWAIYIXhhiVEgAEUYwwYjyASLge4FhHgRDkM8OQih0jWPkGgBBAQ")
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarToggle | exFilterBarPromptVisible
oDCOCX_Exontrol1:[Background,exFooterFilterBarButton] := 0x1000000
oDCOCX_Exontrol1:EndUpdate()

648:
How can I change the visual appearance of the filter bar's close button (solid)

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarPromptVisible
oDCOCX_Exontrol1:[Background,exFooterFilterBarButton] := RGB(255,0,0)
oDCOCX_Exontrol1:EndUpdate()

647:
Is it possible to prevent definitely showing the filter bar's close button

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarPromptVisible
oDCOCX_Exontrol1:[Background,exFooterFilterBarButton] := -1
oDCOCX_Exontrol1:EndUpdate()

646:
Is it possible to show the close button only if there is a filter applied

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarShowCloseIfRequired | exFilterBarPromptVisible
oDCOCX_Exontrol1:EndUpdate()

645:
The control's filter bar is not closed once I click the close button (toggle)

local var_Column,var_Column1 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
	var_Items:[LockedItemCount,BottomAlignment] := 1
	h := var_Items:[LockedItem,BottomAlignment,0]
	var_Items:[ItemDivider,h] := 0
	var_Items:[CellCaption,h,0] := "<c><fgcolor=808080>Press the CTRL + F to turn on/off the control's filter bar. ALT + Up/Down moves the focus."
	var_Items:[CellCaptionFormat,h,0] := exHTML
oDCOCX_Exontrol1:FilterBarCaption := "`<r><fgcolor=808080>` + value"
oDCOCX_Exontrol1:FilterBarPromptPattern := "B"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarCompact | exFilterBarToggle | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

644:
How can I display the control's filter on a single line

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarCaption := "len(value) ? `filter for: <fgcolor 808080>` + value  : `<fgcolor 808080>no filter`"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarSingleLine | exFilterBarVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item A|Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

643:
How can I display the control's filter on a single line (prompt-combined)

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarCaption := "`<r>` + value"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarCompact | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item A|Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

642:
How can I get the number of results after a filter is applied

METHOD OCX_Exontrol1Click() CLASS MainDialog
	// Click event - Occurs when the user presses and then releases the left mouse button over the tree control.
	oDCOCX_Exontrol1:ClearFilter()
RETURN NIL

METHOD OCX_Exontrol1FilterChange() CLASS MainDialog
	// FilterChange event - Notifies your application that the filter is changed.
	OutputDebugString(String2Psz( "Items.MatchItemCount" ))
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Items:MatchItemCount) ))
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:FormatABC("value < 0 ? `filter applied: ` + abs(value + 1) + ` result(s)` : `no filter`",oDCOCX_Exontrol1:Items:MatchItemCount,nil,nil)) ))
RETURN NIL

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarPromptVisible
oDCOCX_Exontrol1:FilterBarPromptPattern := "Item"
oDCOCX_Exontrol1:EndUpdate()

641:
How can I programmatically clear the control's filter

METHOD OCX_Exontrol1Click() CLASS MainDialog
	// Click event - Occurs when the user presses and then releases the left mouse button over the tree control.
	oDCOCX_Exontrol1:ClearFilter()
RETURN NIL

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarPromptVisible
oDCOCX_Exontrol1:FilterBarPromptPattern := "B"
oDCOCX_Exontrol1:EndUpdate()

640:
Is it possible to prevent closing the control's filter bar, so it is always shown (prompt-combined)

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptPattern := "B"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarVisible | exFilterBarPromptVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

639:
Is it possible to prevent closing the control's filter bar, so it is always shown (prompt)

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarPromptVisible
oDCOCX_Exontrol1:FilterBarPromptPattern := "B"
oDCOCX_Exontrol1:EndUpdate()

638:
Is it possible to prevent closing the control's filter bar, so it is always shown

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}:DisplayFilterButton := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:AllowSizing := false
	var_Column:AllowSort := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 apos ``"
	var_Column:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item A")
	var_Items:AddItem("Item B")
	var_Items:AddItem("Item C")
oDCOCX_Exontrol1:FilterBarCaption := "len(value) = 0 ? `<fgcolor=808080>no filter` : value"
oDCOCX_Exontrol1:FilterBarPromptVisible := exFilterBarVisible
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilter
	var_Column1:Filter := "Item B"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

637:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 4)

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:VisualDesign := "gBFLBWIgBAEHhEJAEGg6VAkHeLpgwChAOhULB8XAUUg8MAAREEHGMcgRCJ0ei8dhABDEcQAAYAQGKIYBkAKBQAGaAoDDMOQwQwAAxjGKEEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBRWAkEwiBiEQTjea5CgOIAFS7LIqjRQEBxhIaZYIGaiQADENo9TxIMZAfBIHShK6NJABCCSQKkYx0HScRijDIEFwGIQmbKiej4DCiCQQW7OYYRVCNMQSfa8HivJyrcamfp/YBgOBYHb1eLVPR5LwfPCGUw1P6PLxkORZHimK4tSLHV7xVpMIwZFafIQhCCoHomS5NU7UNR0TQUFx9FaGX7rDDsGwLAJ6XRgF4bg2VpnHePpenAN4bH2GwHFmApSjEGBLnWOpRGOTBZHOegrE6BxPiWVJqCweQrn0LgJAWJBjwgaw1gKO5HmWch5h+fovF+G5bmich4BgfZkB8dynRUVYqiUR5rnmex/F6N4tn2AJfnebZ3DEXw3HWXgzAyIwgicKJKBKEIhCeCgiHyHYFEmSAFmqBghFIdgSCeIJygYDAyAgJx6AoIINAMOJNCgCZCGoGoLmMCI+CwJoihMNglCCIhzFCUg0EmMhghWDBkAiQg9CUY4jEYN4Jk2IxklYJoJHIUg+CSZJSESFwkkkGI+FOFIJEIRhPhMCRJCSVoRrSBhiDgTZjHYT4PEkYhwhgJYm0SaIaiaSYuE+GQNlmCIBGCJxjhiZQ5AkMhAg6ExJCkPhPguaAiFYUAlAkKZ0g6HoOEmWR/GHcA4m0OwIlIJIHCRgQshGJhpjoaocieaZiC6GAimkUgehIOwnGYGYIGkah6jaE4rg6SpCjKK5rEOMYlGIGIihKOggloFoqj6L5aGaBo6CkGIkAQjiPpCAAaJILCTJQlKPACDaXJgmSaJsnCdJ4nygKEoijKQpSmKcqCpKoqysK0rivLAsSyLMtC1LYty4Lkui7LwvS+L8wDBMIwzEMUxjHMgyTKMszDNM4zzQNE0jTNQ1TWNc2DZNo2zcN03jfOA4TiOM5DlOY5zoOk6jrOw7TuO88DxPI8z0PU9j3Pg+T6Ps/D9P4/0AQFAkDQRBUGQdCEJQpC0MQ1DkPRBEUSRNFEVBhFkXRhGQ9D6Dxfh+W5gGGd4QH2XQjCmDpFFaKoVB+D5Xmed5+H8YAHnIAh9EwV5Fl0d4MkMKJICmSgygSJAoEmMUCIPgnDCCIOQFYCxJjwFoCcA4kxoF+AIJkAgExegDEgEYQInAzCUAIOEGgfxiiRDYF1Q4EQ2BSCaEQYwbAiKREMpRSymFNDIAkAxT6oVRgSA2qdVKq1WqvVirMZQUhSCnBUMoIgoQRgnGSIQUgkg1hIHYAkAYMROAmHiLsE4xxSCxBwEwCQ0wmDdBsE0GYXBtg2CSPMFIuwYiQBYBQeAcwOCnBCCZgw0g0glBONAQgqQThCGgPQGoBQfiRGmOEZIPAXjsBoPAO4HRThhA0EQSA5BAgaCKJIGg3QdhOCmNUBoQAijTCIF0FwQxpCHDIPAYYMQGgtCmFcaQtRAjZCyFYSojQ2B2BoKwIYFApBXEIBsIQ1QsAWAWEwaA1xCgjAoIAQBAQ="
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

636:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 3)

local var_Appearance as IAppearance
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(3,"gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgXIcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRgwZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOMINCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=")
	var_Appearance:Add(1,"CP:3 -2 -2 2 2")
	var_Appearance:Add(4,"gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEeBkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOFSFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQOJtDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=")
	var_Appearance:Add(2,"CP:4 -2 -2 2 2")
oDCOCX_Exontrol1:LinesAtRoot := exGroupLinesAtRoot
oDCOCX_Exontrol1:HasButtons := exCustom
oDCOCX_Exontrol1:[HasButtonsCustom,false] := 16777216
oDCOCX_Exontrol1:[HasButtonsCustom,true] := 33554432
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

635:
How can I change the visual appearance of the +/- buttons, open/close glyphs as current visual theme (method 2)

local var_Appearance as IAppearance
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"XP:TREEVIEW 2 1")
	var_Appearance:Add(2,"XP:TREEVIEW 2 2")
oDCOCX_Exontrol1:[Background,exTreeGlyphOpen] := 0x1000000
oDCOCX_Exontrol1:[Background,exTreeGlyphClose] := 0x2000000
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

634:
How can I find if the control is running in DPI mode

OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:FormatABC("dpi = 1 ? `normal/stretch mode` : `dpi mode`",nil,nil,nil)) ))

633:
How can I change the visual appearance of the +/- buttons (method 1)

local var_Appearance as IAppearance
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgXIcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRgwZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOMINCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=")
	var_Appearance:Add(2,"gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEeBkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOFSFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQOJtDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=")
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:[Background,exTreeGlyphOpen] := 0x1000000
oDCOCX_Exontrol1:[Background,exTreeGlyphClose] := 0x2000000
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

632:
I am using single selection, the question is if possible to select an item only when the user releases the mouse, as currently it selects the item as soon as the user clicks it
METHOD OCX_Exontrol1SelectionChanged() CLASS MainDialog
	// SelectionChanged event - Fired after a new item has been selected.
	OutputDebugString(String2Psz( "SelectionChanged" ))
RETURN NIL

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:FreezeEvents(true)
oDCOCX_Exontrol1:SingleSel := true
oDCOCX_Exontrol1:SelectOnRelease := true
IColumn{oDCOCX_Exontrol1:Columns:Add("Column")}:FormatColumn := "1 apos `A-Z`"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	var_Items:[SelectItem,var_Items:AddItem("")] := true
	var_Items:AddItem("")
oDCOCX_Exontrol1:FreezeEvents(false)
oDCOCX_Exontrol1:EndUpdate()

631:
Is it possible to select nothing
METHOD OCX_Exontrol1SelectionChanged() CLASS MainDialog
	// SelectionChanged event - Fired after a new item has been selected.
	OutputDebugString(String2Psz( "SelectionChanged" ))
RETURN NIL

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:FreezeEvents(true)
oDCOCX_Exontrol1:AllowSelectNothing := true
IColumn{oDCOCX_Exontrol1:Columns:Add("Column")}:FormatColumn := "1 apos `A-Z`"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	var_Items:[SelectItem,var_Items:AddItem("")] := true
	var_Items:AddItem("")
oDCOCX_Exontrol1:FreezeEvents(false)
oDCOCX_Exontrol1:EndUpdate()

630:
How can I specify the color for control's selection when it loses the focus

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("")}
	var_Column:AllowSizing := false
	var_Column:AllowDragging := false
	var_Column:AllowSort := false
	var_Column:Width := 24
	var_Column:[Def,exCellHasButton] := true
IColumn{oDCOCX_Exontrol1:Columns:Add("Column")}:FormatColumn := "1 apos `A-Z`"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	var_Items:[SelectItem,var_Items:AddItem("")] := true
	var_Items:AddItem("")
oDCOCX_Exontrol1:[Background,exSelBackColorHide] := RGB(196,196,196)
oDCOCX_Exontrol1:[Background,exSelForeColorHide] := RGB(0,0,1)
oDCOCX_Exontrol1:EndUpdate()

629:
How can I change the background color for checked items (EBN color, frame)

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Appearance as IAppearance
local var_Column as IColumn
local var_ConditionalFormat as IConditionalFormat
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:SelBackMode := exTransparent
oDCOCX_Exontrol1:DefaultItemHeight := 22
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Tasks")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(2,"gBFLBCJwBAEHhEJAAEhABUkIQAAYAQGKIcBiAKBQAGYBIJDEMQ3DjAUBjMK4ZwTC4AIQjCK4JDKHYJRpHEZgLBMJAAGIZYhhUYRUiYMkiJBGGDIDiGGI2SJAcbTVIEcx9EyUJSgSTJOjCMokTTIU4TTLYASbJafJJhWSaAiyMouDIOMg1BDNIw/Hika6jOgKUisNJXRzWIBTbDlOQ3JqnbCjOQRSrQBoNDAMAiiaKlbwJPK9RoieQXfwUAJrXJcFqXFSLVxNBKAQEBA=")
	var_Appearance:Add(1,"CP:2 1 1 -1 -1")
var_ConditionalFormat := oDCOCX_Exontrol1:ConditionalFormats:Add("%CS0 = 1",nil)
	var_ConditionalFormat:BackColor := 0x1000000
oDCOCX_Exontrol1:HeaderVisible := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	hChild := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:[SelectItem,hChild] := true
	hChild := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:[CellState,hChild,nil] := 1
	hChild := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[CellState,hChild,nil] := 1
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

628:
How can I change the caption of the checked items (sample 2)

local var_Column as IColumn
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Tasks")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
	var_Column:[Def,exCellCaptionFormat] := 1
	var_Column:FormatColumn := "%CS0 = 1 ? `<bgcolor=000000><fgcolor=FFFFFF> ` + value + ` </fgcolor></bgcolor>` : value"
oDCOCX_Exontrol1:HeaderVisible := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	hChild := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:[SelectItem,hChild] := true
	hChild := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:[CellState,hChild,nil] := 1
	hChild := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[CellState,hChild,nil] := 1
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

627:
How can I change the caption of the checked items (sample 1)

local var_Column as IColumn
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Tasks")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
	var_Column:[Def,exCellCaptionFormat] := 1
	var_Column:FormatColumn := "value + (%CS0 = 1 ? `<r><fgcolor=808080>(checked)` : ``)"
oDCOCX_Exontrol1:HeaderVisible := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	hChild := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:[SelectItem,hChild] := true
	hChild := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:[CellState,hChild,nil] := 1
	hChild := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[CellState,hChild,nil] := 1
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

626:
How can I change the font for the checked items

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column as IColumn
local var_ConditionalFormat as IConditionalFormat
local var_Items as IItems
local h,hChild as USUAL
local f as stdFont

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:DefaultItemHeight := 22
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Tasks")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
var_ConditionalFormat := oDCOCX_Exontrol1:ConditionalFormats:Add("%CS0 = 1",nil)
	// Generate Source for 'OLE Automation(stdole2.tlb)' server from Tools\Automation Server... with the PREFIX std
	f := stdFont{"StdFont"}
		f:Name := oDCOCX_Exontrol1:Font:Name
		f:Size := 12
	var_ConditionalFormat:Font := f
oDCOCX_Exontrol1:HeaderVisible := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	hChild := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:[SelectItem,hChild] := true
	hChild := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:[CellState,hChild,nil] := 1
	hChild := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[CellState,hChild,nil] := 1
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

625:
How can I bold the checked items

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column as IColumn
local var_ConditionalFormat as IConditionalFormat
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Tasks")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
var_ConditionalFormat := oDCOCX_Exontrol1:ConditionalFormats:Add("%CS0 = 1",nil)
	var_ConditionalFormat:Bold := true
oDCOCX_Exontrol1:HeaderVisible := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	hChild := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:[SelectItem,hChild] := true
	hChild := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:[CellState,hChild,nil] := 1
	hChild := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[CellState,hChild,nil] := 1
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

624:
How can I change the foreground color for checked items

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column as IColumn
local var_ConditionalFormat as IConditionalFormat
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:SelBackMode := exTransparent
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Tasks")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
var_ConditionalFormat := oDCOCX_Exontrol1:ConditionalFormats:Add("%CS0 = 1",nil)
	var_ConditionalFormat:ForeColor := RGB(255,128,128)
oDCOCX_Exontrol1:HeaderVisible := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	hChild := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:[SelectItem,hChild] := true
	hChild := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:[CellState,hChild,nil] := 1
	hChild := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[CellState,hChild,nil] := 1
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

623:
How can I change the background color for checked items (solid color)

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column as IColumn
local var_ConditionalFormat as IConditionalFormat
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:SelBackMode := exTransparent
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Tasks")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
var_ConditionalFormat := oDCOCX_Exontrol1:ConditionalFormats:Add("%CS0 = 1",nil)
	var_ConditionalFormat:BackColor := RGB(255,128,128)
oDCOCX_Exontrol1:HeaderVisible := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	hChild := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:[SelectItem,hChild] := true
	hChild := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:[CellState,hChild,nil] := 1
	hChild := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[CellState,hChild,nil] := 1
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

622:
How can I export the cell's state as well

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("C1")}:[Def,exCellHasCheckBox] := true
	IColumn{var_Columns:Add("C2")}:FormatColumn := "1 index `A-Z`"
	IColumn{var_Columns:Add("C3")}:FormatColumn := "100 index ``"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:[CellState,var_Items:AddItem("Item 2"),nil] := 1
	var_Items:[CellState,var_Items:AddItem("Item 3"),nil] := 1
oDCOCX_Exontrol1:EndUpdate()
OutputDebugString(String2Psz( "Export CSV Items including Check-State:" ))
oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}
	var_Column:Position := 0
	var_Column:FormatColumn := "%CS0"
OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Export("",nil)) ))
oDCOCX_Exontrol1:Columns:Remove("Check")
oDCOCX_Exontrol1:EndUpdate()

621:
The BeforeExpandItem event is fired when clicking the drop down filter button. What we can do to prevent that (method 2)
METHOD OCX_Exontrol1BeforeExpandItem(Item,Cancel) CLASS MainDialog
	// BeforeExpandItem event - Fired before an item is about to be expanded (collapsed).
	OutputDebugString(String2Psz( "BeforeExpandItem" ))
	OutputDebugString(String2Psz( AsString(Item) ))
	OutputDebugString(String2Psz( "ColumnFromPoint" ))
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:[ColumnFromPoint,-1,-1]) ))
	OutputDebugString(String2Psz( "ColumnFromPoint return -1, if the user clicks the +/- glitch, else it returns the index of the column where the click occurs." ))
	oDCOCX_Exontrol1:Items:InsertItem(Item,nil,"new child")
RETURN NIL

local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("Items")}:DisplayFilterButton := true
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[ItemHasChildren,var_Items:InsertItem(nil,nil,"Group 1")] := true
	var_Items:[ItemHasChildren,var_Items:InsertItem(nil,nil,"Group 2")] := true
oDCOCX_Exontrol1:EndUpdate()

620:
The BeforeExpandItem event is fired when clicking the drop down filter button. What we can do to prevent that (method 1)
METHOD OCX_Exontrol1BeforeExpandItem(Item,Cancel) CLASS MainDialog
	// BeforeExpandItem event - Fired before an item is about to be expanded (collapsed).
	OutputDebugString(String2Psz( "BeforeExpandItem" ))
	OutputDebugString(String2Psz( AsString(Item) ))
	oDCOCX_Exontrol1:Items:InsertItem(Item,nil,"new child")
RETURN NIL

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("Items")}
		var_Column:DisplayFilterButton := true
		var_Column:FilterList := exRootItems
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[ItemHasChildren,var_Items:InsertItem(nil,nil,"Group 1")] := true
	var_Items:[ItemHasChildren,var_Items:InsertItem(nil,nil,"Group 2")] := true
oDCOCX_Exontrol1:EndUpdate()

619:
How do I change the drop down filter icon/button (black)

local var_Appearance as IAppearance
local var_Column as IColumn

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQgmPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYThdr4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA")
oDCOCX_Exontrol1:[Background,exHeaderFilterBarButton] := 0x1000000
oDCOCX_Exontrol1:[Background,exCursorHoverColumn] := -1
oDCOCX_Exontrol1:HeaderAppearance := None2
oDCOCX_Exontrol1:BackColorHeader := RGB(0,0,0)
oDCOCX_Exontrol1:ForeColorHeader := RGB(255,255,255)
oDCOCX_Exontrol1:HeaderVisible := true
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Filter")}
	var_Column:DisplayFilterButton := true
	var_Column:AllowSort := false
	var_Column:AllowDragging := false
oDCOCX_Exontrol1:EndUpdate()

618:
How do I change the drop down filter icon/button (white)

local var_Appearance as IAppearance
local var_Column as IColumn

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(2,"gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YNYuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4hhKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgbhOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWBMJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=")
	var_Appearance:Add(1,"CP:2 -14 -4 -2 4")
oDCOCX_Exontrol1:[Background,exHeaderFilterBarButton] := 0x1000000
oDCOCX_Exontrol1:[Background,exCursorHoverColumn] := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:HeaderAppearance := None2
oDCOCX_Exontrol1:BackColorHeader := RGB(255,255,255)
oDCOCX_Exontrol1:HeaderVisible := true
oDCOCX_Exontrol1:HeaderHeight := 24
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Filter")}
	var_Column:DisplayFilterButton := true
	var_Column:AllowSort := false
	var_Column:AllowDragging := false
oDCOCX_Exontrol1:EndUpdate()

617:
Do you have any Fit-To-Page options when printing the control (W x T, Fit-To )

local var_Print as IExPrint
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access2007\sample.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	var_Print:Options := "FitToPage =2 x 1"
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

616:
Do you have any Fit-To-Page options when printing the control ( x T, Fit-To Tall )

local var_Print as IExPrint
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access2007\sample.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	var_Print:Options := "FitToPage = x 2"
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

615:
Do you have any Fit-To-Page options when printing the control ( W x, Fit-To Wide )

local var_Print as IExPrint
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access2007\sample.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	var_Print:Options := "FitToPage = 2 x"
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

614:
Do you have any Fit-To-Page options when printing the control ( percent view, Adjust-To )

local var_Print as IExPrint
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access2007\sample.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	var_Print:Options := "FitToPage = 50%"
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

613:
How do I prevent changing the cell's state ( check-box state )
METHOD OCX_Exontrol1CellStateChanging(Item,ColIndex,NewState) CLASS MainDialog
	// CellStateChanging event - Fired before cell's state is about to be changed.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		NewState := var_Items:[CellState,Item,ColIndex]
RETURN NIL

local var_Column,var_Column1 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("P1")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("P2")}
	var_Column1:[Def,exCellHasCheckBox] := true
	var_Column1:PartialCheck := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

612:
How can I use the CellState with ConditionalFormat/ComputedField/FormatColumn

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.

RETURN NIL

local var_Column,var_Column1 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exGroupLinesInsideLeaf
oDCOCX_Exontrol1:SelBackMode := exTransparent
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Items")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Format")}
	var_Column1:FormatColumn := "%CS0"
	var_Column1:Caption := var_Column1:FormatColumn
	var_Column1:[Def,exCellForeColor] := 8421504
	var_Column1:[Def,exHeaderForeColor] := var_Column1:[Def,exCellForeColor]
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Item 1")
	var_Items:[CellState,var_Items:InsertItem(h,nil,"Item 2"),0] := 1
	var_Items:[CellState,var_Items:InsertItem(h,nil,"Item 3"),0] := 1
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

611:
How can I use the CellData with ConditionalFormat/ComputedField/FormatColumn

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Items")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Format")}
	var_Column:FormatColumn := "%CD0"
	var_Column:Caption := var_Column:FormatColumn
	var_Column:[Def,exCellForeColor] := 8421504
	var_Column:[Def,exHeaderForeColor] := var_Column:[Def,exCellForeColor]
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellData,var_Items:AddItem("Item 1"),0] := 1234
	var_Items:[CellData,var_Items:AddItem("Item 2"),0] := "this is just an user data"
	var_Items:[CellData,var_Items:AddItem("Item 3"),0] := SToD("20010101")
oDCOCX_Exontrol1:EndUpdate()

610:
How can I use the CellCaption with ConditionalFormat/ComputedField/FormatColumn

local var_Column,var_Column1 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Items")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Format")}
	var_Column:FormatColumn := "%0"
	var_Column:Caption := var_Column:FormatColumn
	var_Column:[Def,exCellForeColor] := 8421504
	var_Column:[Def,exHeaderForeColor] := var_Column:[Def,exCellForeColor]
	var_Column:Width := 96
	var_Column:AllowSizing := false
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Format")}
	var_Column1:FormatColumn := "%C0"
	var_Column1:Caption := var_Column1:FormatColumn
	var_Column1:[Def,exCellForeColor] := 8421504
	var_Column1:[Def,exHeaderForeColor] := var_Column1:[Def,exCellForeColor]
	var_Column1:Width := 96
	var_Column1:AllowSizing := false
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem(1)
	h := var_Items:AddItem(0)
	var_Items:[CellCaption,h,0] := "<b>HTML</b> Text"
	var_Items:[CellCaptionFormat,h,0] := exHTML
	var_Items:AddItem(2)
oDCOCX_Exontrol1:EndUpdate()

609:
Can I display the radio-button with a solid color

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:[RadioImage,false] := 32699122
oDCOCX_Exontrol1:[RadioImage,true] := 16777216
IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}:[Def,exCellHasRadioButton] := true
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Radio 1")
	var_Items:[CellState,var_Items:AddItem("Radio 2"),0] := 1
	var_Items:AddItem("Radio 1")
oDCOCX_Exontrol1:EndUpdate()

608:
Can I display the check-box with a solid color

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:[CheckImage,Unchecked] := 32699122
oDCOCX_Exontrol1:[CheckImage,Checked] := 16777216
IColumn{oDCOCX_Exontrol1:Columns:Add("Check")}:[Def,exCellHasCheckBox] := true
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Check 1")
	var_Items:[CellState,var_Items:AddItem("Check 2"),0] := 1
	var_Items:AddItem("Check 3")
oDCOCX_Exontrol1:EndUpdate()

607:
Can I display the column's multiple-lines caption vertically oriented (method 2)

local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:HeaderHeight := 48
oDCOCX_Exontrol1:ColumnAutoResize := true
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("And others ...")
	var_Column := IColumn{var_Columns:Add("")}
		var_Column:HTMLCaption := "First Column"
		var_Column:HeaderVertical := true
		var_Column:Width := 36
		var_Column:AllowSizing := false
		var_Column:[Def,exCellHasCheckBox] := true
		var_Column:[Def,exCellPaddingLeft] := 8
		var_Column:Position := 0
	var_Column1 := IColumn{var_Columns:Add("")}
		var_Column1:HTMLCaption := "<c><b>Second Column"
		var_Column1:HeaderVertical := true
		var_Column1:Width := 36
		var_Column1:AllowSizing := false
		var_Column1:[Def,exCellHasCheckBox] := true
		var_Column1:[Def,exCellPaddingLeft] := 8
		var_Column1:Position := 1
	var_Column2 := IColumn{var_Columns:Add("")}
		var_Column2:HTMLCaption := "<r>Third Column"
		var_Column2:HeaderVertical := true
		var_Column2:Width := 36
		var_Column2:AllowSizing := false
		var_Column2:[Def,exCellHasCheckBox] := true
		var_Column2:[Def,exCellPaddingLeft] := 8
		var_Column2:Position := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellState,var_Items:AddItem("Item 1"),3] := 1
	var_Items:[CellState,var_Items:AddItem("Item 2"),2] := 1
	var_Items:[CellState,var_Items:AddItem("Item 3"),1] := 1
oDCOCX_Exontrol1:EndUpdate()

606:
Can I display the column's multiple-lines caption vertically oriented (method 1)

local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:HeaderHeight := 48
oDCOCX_Exontrol1:HeaderSingleLine := false
oDCOCX_Exontrol1:ColumnAutoResize := true
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("And others ...")
	var_Column := IColumn{var_Columns:Add("First Column")}
		var_Column:HeaderVertical := true
		var_Column:Width := 36
		var_Column:AllowSizing := false
		var_Column:[Def,exCellHasCheckBox] := true
		var_Column:[Def,exCellPaddingLeft] := 8
		var_Column:Position := 0
	var_Column1 := IColumn{var_Columns:Add("Second Column")}
		var_Column1:HeaderBold := true
		var_Column1:HeaderVertical := true
		var_Column1:Width := 36
		var_Column1:AllowSizing := false
		var_Column1:[Def,exCellHasCheckBox] := true
		var_Column1:[Def,exCellPaddingLeft] := 8
		var_Column1:Position := 1
	var_Column2 := IColumn{var_Columns:Add("Third Column")}
		var_Column2:HeaderVertical := true
		var_Column2:Width := 36
		var_Column2:AllowSizing := false
		var_Column2:[Def,exCellHasCheckBox] := true
		var_Column2:[Def,exCellPaddingLeft] := 8
		var_Column2:Position := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellState,var_Items:AddItem("Item 1"),3] := 1
	var_Items:[CellState,var_Items:AddItem("Item 2"),2] := 1
	var_Items:[CellState,var_Items:AddItem("Item 3"),1] := 1
oDCOCX_Exontrol1:EndUpdate()

605:
Can I display the column's caption vertically oriented (method 2)

local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:HeaderHeight := 48
oDCOCX_Exontrol1:ColumnAutoResize := true
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("And others ...")
	var_Column := IColumn{var_Columns:Add("")}
		var_Column:HTMLCaption := "First"
		var_Column:HeaderVertical := true
		var_Column:Width := 20
		var_Column:AllowSizing := false
		var_Column:[Def,exCellHasCheckBox] := true
		var_Column:Position := 0
	var_Column1 := IColumn{var_Columns:Add("")}
		var_Column1:HTMLCaption := "<c><b>Second"
		var_Column1:HeaderVertical := true
		var_Column1:Width := 20
		var_Column1:AllowSizing := false
		var_Column1:[Def,exCellHasCheckBox] := true
		var_Column1:Position := 1
	var_Column2 := IColumn{var_Columns:Add("")}
		var_Column2:HTMLCaption := "<r>Third"
		var_Column2:HeaderVertical := true
		var_Column2:Width := 20
		var_Column2:AllowSizing := false
		var_Column2:[Def,exCellHasCheckBox] := true
		var_Column2:Position := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellState,var_Items:AddItem("Item 1"),3] := 1
	var_Items:[CellState,var_Items:AddItem("Item 2"),2] := 1
	var_Items:[CellState,var_Items:AddItem("Item 3"),1] := 1
oDCOCX_Exontrol1:EndUpdate()

604:
Can I display the column's caption vertically oriented (method 1)

local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:HeaderHeight := 48
oDCOCX_Exontrol1:ColumnAutoResize := true
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("And others ...")
	var_Column := IColumn{var_Columns:Add("First")}
		var_Column:HeaderVertical := true
		var_Column:Width := 20
		var_Column:AllowSizing := false
		var_Column:[Def,exCellHasCheckBox] := true
		var_Column:Position := 0
	var_Column1 := IColumn{var_Columns:Add("Second")}
		var_Column1:HeaderBold := true
		var_Column1:HeaderVertical := true
		var_Column1:Width := 20
		var_Column1:AllowSizing := false
		var_Column1:[Def,exCellHasCheckBox] := true
		var_Column1:Position := 1
	var_Column2 := IColumn{var_Columns:Add("Third")}
		var_Column2:HeaderVertical := true
		var_Column2:Width := 20
		var_Column2:AllowSizing := false
		var_Column2:[Def,exCellHasCheckBox] := true
		var_Column2:Position := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellState,var_Items:AddItem("Item 1"),3] := 1
	var_Items:[CellState,var_Items:AddItem("Item 2"),2] := 1
	var_Items:[CellState,var_Items:AddItem("Item 3"),1] := 1
oDCOCX_Exontrol1:EndUpdate()

603:
How do I automatically bold items being checked

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.

RETURN NIL

local var_ConditionalFormat as IConditionalFormat
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:SelBackMode := exTransparent
var_ConditionalFormat := oDCOCX_Exontrol1:ConditionalFormats:Add("%CS0","check")
	var_ConditionalFormat:Bold := true
IColumn{oDCOCX_Exontrol1:Columns:Add("Items")}:[Def,exCellHasCheckBox] := true
IColumn{oDCOCX_Exontrol1:Columns:Add(oDCOCX_Exontrol1:ConditionalFormats:[Item,"check"]:Expression)}:FormatColumn := oDCOCX_Exontrol1:ConditionalFormats:[Item,"check"]:Expression
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:[CellState,var_Items:AddItem("Item 2"),0] := 1
	var_Items:AddItem("Item 3")
oDCOCX_Exontrol1:EndUpdate()

602:
How can I include the child items, when a filter is applied

local var_Columns as IColumns
local var_Items as IItems
local h0 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := true
oDCOCX_Exontrol1:ContinueColumnScroll := false
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:SearchColumnIndex := 1
oDCOCX_Exontrol1:Indent := 16
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:FilterBarPromptVisible := true
oDCOCX_Exontrol1:FilterBarPromptPattern := "Nancy"
oDCOCX_Exontrol1:FilterInclude := exItemsWithChilds
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("Name")}:Width := 96
	IColumn{var_Columns:Add("Title")}:Width := 96
	var_Columns:Add("City")
var_Items := oDCOCX_Exontrol1:Items
	h0 := var_Items:AddItem("Nancy Davolio")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Seattle"
	h0 := var_Items:InsertItem(h0,nil,"Andrew Fuller")
	var_Items:[CellCaption,h0,1] := "Vice President, Sales"
	var_Items:[CellCaption,h0,2] := "Tacoma"
	h0 := var_Items:InsertItem(h0,nil,"Michael Suyama")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Janet Leverling")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Kirkland"
	h0 := var_Items:InsertItem(h0,nil,"Margaret Peacock")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Redmond"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

601:
How do I get sorted the column as string, numeric, date, date and time. Also how can it be applied to drop down filter panel

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Date")}
	var_Column:SortType := SortDate
	var_Column:DisplayFilterButton := true
	var_Column:DisplayFilterPattern := false
	var_Column:DisplayFilterDate := true
	var_Column:FilterList := exShowFocusItem | exShowCheckBox | exSortItemsDesc
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("DateTime")}
	var_Column1:SortType := SortDateTime
	var_Column1:DisplayFilterButton := true
	var_Column1:DisplayFilterPattern := false
	var_Column1:FilterList := exShowFocusItem | exShowCheckBox | exSortItemsDesc
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Time")}
	var_Column2:SortType := SortTime
	var_Column2:DisplayFilterButton := true
	var_Column2:DisplayFilterPattern := false
	var_Column2:FilterList := exShowFocusItem | exShowCheckBox | exSortItemsDesc
	var_Column2:FormatColumn := "time(value)"
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Numeric")}
	var_Column3:SortType := SortNumeric
	var_Column3:DisplayFilterButton := true
	var_Column3:FilterList := exShowFocusItem | exShowCheckBox | exSortItemsDesc
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("String")}
	var_Column4:DisplayFilterButton := true
	var_Column4:FilterList := exShowFocusItem | exShowCheckBox | exSortItemsDesc
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(SToD("20100127"))
	var_Items:[CellCaption,h,1] := SToD("20100127 10:00:00")
	var_Items:[CellCaption,h,2] := var_Items:[CellCaption,h,1]
	var_Items:[CellCaption,h,3] := 1
	var_Items:[CellCaption,h,4] := var_Items:[CellCaption,h,3]
	h := var_Items:AddItem(SToD("20110127"))
	var_Items:[CellCaption,h,1] := SToD("20110127 09:00:00")
	var_Items:[CellCaption,h,2] := var_Items:[CellCaption,h,1]
	var_Items:[CellCaption,h,3] := 11
	var_Items:[CellCaption,h,4] := var_Items:[CellCaption,h,3]
	h := var_Items:AddItem(SToD("20101102"))
	var_Items:[CellCaption,h,1] := SToD("20101102 09:00:00")
	var_Items:[CellCaption,h,2] := var_Items:[CellCaption,h,1]
	var_Items:[CellCaption,h,3] := 2
	var_Items:[CellCaption,h,4] := var_Items:[CellCaption,h,3]
oDCOCX_Exontrol1:Columns:[Item,"DateTime"]:DisplayFilterDate := false
oDCOCX_Exontrol1:EndUpdate()