1122:
How can I define a column of button type

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	ButtonClick = class::nativeObject_ButtonClick
endwith
*/
// Occurs when user clicks on the cell's button.
function nativeObject_ButtonClick(Item,ColIndex,Key)
	local var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	var_Items = oGrid.Items
		? Str(var_Items.CellValue(Item,ColIndex)) 
return

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("Button")
	// var_Column.Def(2) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(2) = True]
	endwith
	// var_Column.Def(3) = false
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(3) = False]
	endwith
	var_Column.FormatColumn = "``"
	var_Column.AllowSizing = false
	var_Column.Width = 48
// oGrid.Columns.Add("Second").FormatColumn = "` Item ` + 1 index ``"
var_Column1 = oGrid.Columns.Add("Second")
with (oGrid)
	TemplateDef = [dim var_Column1]
	TemplateDef = var_Column1
	Template = [var_Column1.FormatColumn = "` Item ` + 1 index ``"]
endwith
var_Items = oGrid.Items
	var_Items.AddItem("Button 1")
	var_Items.AddItem("Button 2")
	var_Items.AddItem("Button 3 ")
oGrid.EndUpdate()

1121:
Is it possible to configure different colour/icon when there is a active filter

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	FilterChange = class::nativeObject_FilterChange
endwith
*/
// Occurs when filter was changed.
function nativeObject_FilterChange()
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Template = [Background(0) = FormatABC("value = 0 ? 0x1000001 : 0x10000FF ",Columns.Item(0).FilterType)] // oGrid.Background(0) = oGrid.FormatABC("value = 0 ? 0x1000001 : 0x10000FF ",oGrid.Columns.Item(0).FilterType)
return

local oGrid,var_Appearance,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Appearance = oGrid.VisualAppearance
	var_Appearance.RenderType = -16777216
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQgmPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYThdr4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA")
oGrid.DrawGridLines = -1
oGrid.ShowFocusRect = false
oGrid.Template = [Background(0) = 16777217] // oGrid.Background(0) = 0x1000001
oGrid.Template = [Background(32) = -1] // oGrid.Background(32) = -1
oGrid.HeaderAppearance = 4
oGrid.BackColorHeader = 0xffffff
oGrid.HeaderVisible = true
var_Column = oGrid.Columns.Add("Filter")
	var_Column.DisplayFilterButton = true
	var_Column.AllowSort = false
	var_Column.AllowDragging = false
	var_Column.FilterList = 256
var_Items = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
var_Column1 = oGrid.Columns.Item(0)
	var_Column1.Filter = "Item B"
	var_Column1.FilterType = 240
oGrid.ApplyFilter()
oGrid.EndUpdate()

1120:
How can I display the type of the value the column display

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderAppearance = 4
oGrid.DrawGridLines = -2
var_Column = oGrid.Columns.Add("Values")
	// var_Column.Def(17) = 1
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(17) = 1]
	endwith
	var_Column.FormatColumn = "value + ` <off 4><fgcolor=808080>type(` + type(%0) + `)`"
var_Items = oGrid.Items
	var_Items.AddItem()
	var_Items.AddItem(-1)
	var_Items.AddItem("string")
	var_Items.AddItem("01/01/2001")
	var_Items.AddItem(2)
	var_Items.AddItem(true)
	var_Items.AddItem(12.34)
oGrid.EndUpdate()

1119:
I want to create a conditional format for a column, verifying that the value of the cell is numeric, how can I do

local oGrid,var_ConditionalFormat,var_ConditionalFormat1,var_ConditionalFormat2,var_ConditionalFormat3,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderAppearance = 4
oGrid.DrawGridLines = -2
oGrid.Columns.Add("Values")
var_ConditionalFormat = oGrid.ConditionalFormats.Add("type(%0) in (2,3,4,5,18,19,20,21)")
	var_ConditionalFormat.ForeColor = 0xff
	var_ConditionalFormat.Bold = true
// oGrid.ConditionalFormats.Add("type(%0) = 11").ForeColor = 0xff00
var_ConditionalFormat1 = oGrid.ConditionalFormats.Add("type(%0) = 11")
with (oGrid)
	TemplateDef = [dim var_ConditionalFormat1]
	TemplateDef = var_ConditionalFormat1
	Template = [var_ConditionalFormat1.ForeColor = 65280]
endwith
// oGrid.ConditionalFormats.Add("type(%0) = 7").ForeColor = 0xff0000
var_ConditionalFormat2 = oGrid.ConditionalFormats.Add("type(%0) = 7")
with (oGrid)
	TemplateDef = [dim var_ConditionalFormat2]
	TemplateDef = var_ConditionalFormat2
	Template = [var_ConditionalFormat2.ForeColor = 16711680]
endwith
// oGrid.ConditionalFormats.Add("type(%0) in (0,1)").BackColor = 0xf0f0f0
var_ConditionalFormat3 = oGrid.ConditionalFormats.Add("type(%0) in (0,1)")
with (oGrid)
	TemplateDef = [dim var_ConditionalFormat3]
	TemplateDef = var_ConditionalFormat3
	Template = [var_ConditionalFormat3.BackColor = 15790320]
endwith
var_Items = oGrid.Items
	var_Items.AddItem()
	var_Items.AddItem(-1)
	var_Items.AddItem("string")
	var_Items.AddItem("01/01/2001")
	var_Items.AddItem(2)
	var_Items.AddItem(true)
	var_Items.AddItem(12.34)
oGrid.EndUpdate()

1118:
How can I assign a computed value on a different column based on other columns

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Change = class::nativeObject_Change
endwith
*/
// Occurs when the user changes the cell's content.
function nativeObject_Change(Item,ColIndex,NewValue)
	local var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.FreezeEvents(true)
	var_Items = oGrid.Items
		// var_Items.CellValue(Item,1) = oGrid.FormatABC("int(255*sin(value/2))",NewValue)
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValue(Item,1) = Me.FormatABC("int(255*sin(value/2))",NewValue)]
		endwith
		// var_Items.CellValue(Item,2) = oGrid.FormatABC("int(255*cos(value/2))",NewValue)
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValue(Item,2) = Me.FormatABC("int(255*cos(value/2))",NewValue)]
		endwith
	oGrid.FreezeEvents(false)
return

local oGrid,var_Column,var_Column1,var_Column2,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.SelBackMode = 1
oGrid.HeaderAppearance = 4
oGrid.DrawGridLines = -2
var_Column = oGrid.Columns.Add("Value")
	var_Column.Editor.EditType = 4
	var_Column.Width = 64
	var_Column.AllowSizing = false
// oGrid.Columns.Add("Assign A").Def(4) = 16448250
var_Column1 = oGrid.Columns.Add("Assign A")
with (oGrid)
	TemplateDef = [dim var_Column1]
	TemplateDef = var_Column1
	Template = [var_Column1.Def(4) = 16448250]
endwith
// oGrid.Columns.Add("Assign B").Def(4) = 16448250
var_Column2 = oGrid.Columns.Add("Assign B")
with (oGrid)
	TemplateDef = [dim var_Column2]
	TemplateDef = var_Column2
	Template = [var_Column2.Def(4) = 16448250]
endwith
var_Column = oGrid.Columns.Add("Computed")
	// var_Column.Def(4) = 16448250
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(4) = 16448250]
	endwith
	var_Column.ComputedField = "%1 + %2"
	var_Column.FormatColumn = "value format ``"
	var_Column.Alignment = 2
	var_Column.HeaderAlignment = var_Column.Alignment
// oGrid.ConditionalFormats.Add("%3 >= 0").Bold = true
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%3 >= 0")
with (oGrid)
	TemplateDef = [dim var_ConditionalFormat]
	TemplateDef = var_ConditionalFormat
	Template = [var_ConditionalFormat.Bold = True]
endwith
var_Items = oGrid.Items
	var_Items.AddItem(1989)
	var_Items.AddItem(2001)
	var_Items.AddItem(2017)
	var_Items.AddItem(2018)
	var_Items.AddItem(2019)
oGrid.EndUpdate()

1117:
How can I get computed a value on a different column

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderAppearance = 4
oGrid.DrawGridLines = -2
var_Column = oGrid.Columns.Add("Year")
	var_Column.Editor.EditType = 4
	var_Column.Width = 64
	var_Column.AllowSizing = false
// oGrid.Columns.Add("Easter").FormatColumn = "date(dateS('3/1/' + %0)  + ((1:=(((255 - 11 * (%0 mod 19)) - 21) mod 30) + 21) + (=:1 > 48 ? -1 : 0) + 6 - ((%0 + int(%0 / 4)) + =:1 + (=:1 > 48 ? -1 : 0) + 1) mod 7))"
var_Column1 = oGrid.Columns.Add("Easter")
with (oGrid)
	TemplateDef = [dim var_Column1]
	TemplateDef = var_Column1
	Template = [var_Column1.FormatColumn = "date(dateS('3/1/' + %0)  + ((1:=(((255 - 11 * (%0 mod 19)) - 21) mod 30) + 21) + (=:1 > 48 ? -1 : 0) + 6 - ((%0 + int(%0 / 4)) + =:1 + (=:1 > 48 ? -1 : 0) + 1) mod 7))"]
endwith
var_Items = oGrid.Items
	var_Items.AddItem(1989)
	var_Items.AddItem(2001)
	var_Items.AddItem(2017)
	var_Items.AddItem(2018)
	var_Items.AddItem(2019)
oGrid.EndUpdate()

1116:
How can I prevent applying ConditionalFormats on a specified cell, for instance I am displaying a Total field, and I will like to have formatted in a different way (method 2)

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Change = class::nativeObject_Change
endwith
*/
// Occurs when the user changes the cell's content.
function nativeObject_Change(Item,ColIndex,NewValue)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local h,oGrid,var_Column,var_ConditionalFormat,var_Editor,var_Items,var_Items1

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_ConditionalFormat = oGrid.ConditionalFormats.Add("(%0 >= 0)")
	var_ConditionalFormat.Expression = "(0=type(%CD0)) and (%0 >= 0)"
	var_ConditionalFormat.Bold = true
	var_ConditionalFormat.ForeColor = 0xff
	? "ConditionalFormat.Valid" 
	? Str(var_ConditionalFormat.Valid) 
var_Column = oGrid.Columns.Add("Numbers")
	var_Editor = var_Column.Editor
		var_Editor.Numeric = -1
		var_Editor.EditType = 4
	var_Column.SortType = 1
var_Items = oGrid.Items
	var_Items.AddItem(100)
	var_Items.AddItem(-25)
	var_Items.AddItem(31)
	var_Items.AddItem(-48)
var_Items1 = oGrid.Items
	h = var_Items1.AddItem("sum(all,dir,dbl(%0))")
	// var_Items1.SelectableItem(h) = false
	with (oGrid)
		TemplateDef = [dim var_Items1,h]
		TemplateDef = var_Items1
		TemplateDef = h
		Template = [var_Items1.SelectableItem(h) = False]
	endwith
	// var_Items1.SortableItem(h) = false
	with (oGrid)
		TemplateDef = [dim var_Items1,h]
		TemplateDef = var_Items1
		TemplateDef = h
		Template = [var_Items1.SortableItem(h) = False]
	endwith
	// var_Items1.ItemBackColor(h) = 0xf0f0f0
	with (oGrid)
		TemplateDef = [dim var_Items1,h]
		TemplateDef = var_Items1
		TemplateDef = h
		Template = [var_Items1.ItemBackColor(h) = 15790320]
	endwith
	// var_Items1.CellData(h,0) = "total"
	with (oGrid)
		TemplateDef = [dim var_Items1,h]
		TemplateDef = var_Items1
		TemplateDef = h
		Template = [var_Items1.CellData(h,0) = "total"]
	endwith
	// var_Items1.CellValueFormat(h,0) = 5 /*exTotalField | exHTML*/
	with (oGrid)
		TemplateDef = [dim var_Items1,h]
		TemplateDef = var_Items1
		TemplateDef = h
		Template = [var_Items1.CellValueFormat(h,0) = 5]
	endwith
	// var_Items1.FormatCell(h,0) = "'Total: <b><fgcolor=0000FF>'+(value format ``)"
	with (oGrid)
		TemplateDef = [dim var_Items1,h]
		TemplateDef = var_Items1
		TemplateDef = h
		Template = [var_Items1.FormatCell(h,0) = "'Total: <b><fgcolor=0000FF>'+(value format ``)"]
	endwith
oGrid.EndUpdate()

1115:
How can I prevent applying ConditionalFormats on a specified cell, for instance I am displaying a Total field, and I will like to have formatted in a different way (method 1)

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Change = class::nativeObject_Change
endwith
*/
// Occurs when the user changes the cell's content.
function nativeObject_Change(Item,ColIndex,NewValue)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local h,oGrid,var_Column,var_Column1,var_ConditionalFormat,var_Editor,var_Items,var_Items1

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%0 >= 0")
	var_ConditionalFormat.Bold = true
	var_ConditionalFormat.ForeColor = 0xff
	var_ConditionalFormat.ApplyTo = 0
var_Column = oGrid.Columns.Add("Numbers")
	var_Editor = var_Column.Editor
		var_Editor.Numeric = -1
		var_Editor.EditType = 4
	var_Column.SortType = 1
// oGrid.Columns.Add("Total").Visible = false
var_Column1 = oGrid.Columns.Add("Total")
with (oGrid)
	TemplateDef = [dim var_Column1]
	TemplateDef = var_Column1
	Template = [var_Column1.Visible = False]
endwith
var_Items = oGrid.Items
	// var_Items.LockedItemCount(2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.LockedItemCount(2) = 1]
	endwith
	h = var_Items.LockedItem(2,0)
	// var_Items.ItemDivider(h) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 1]
	endwith
	// var_Items.ItemDividerLine(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDividerLine(h) = 0]
	endwith
	// var_Items.ItemBackColor(h) = 0xf0f0f0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemBackColor(h) = 15790320]
	endwith
	// var_Items.CellValue(h,1) = "sum(all,dir,dbl(%0))"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,1) = "sum(all,dir,dbl(%0))"]
	endwith
	// var_Items.CellValueFormat(h,1) = 5 /*exTotalField | exHTML*/
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValueFormat(h,1) = 5]
	endwith
	// var_Items.CellHAlignment(h,1) = 2
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHAlignment(h,1) = 2]
	endwith
	// var_Items.FormatCell(h,1) = "'Total: <b><fgcolor=0000FF>'+(value format ``)"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.FormatCell(h,1) = "'Total: <b><fgcolor=0000FF>'+(value format ``)"]
	endwith
var_Items1 = oGrid.Items
	var_Items1.AddItem(100)
	var_Items1.AddItem(-25)
	var_Items1.AddItem(31)
	var_Items1.AddItem(-48)
oGrid.EndUpdate()

1114:
ADODB Requery sample

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	ButtonClick = class::nativeObject_ButtonClick
endwith
*/
// Occurs when user clicks on the cell's button.
function nativeObject_ButtonClick(Item,ColIndex,Key)
	local cmd
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	cmd = new OleAutoClient("ADODB.Command")
		cmd.ActiveConnection = oGrid.DataSource.ActiveConnection
		cmd.CommandText = "INSERT INTO Orders (EmployeeID) VALUES(12345)"
		cmd.CommandType = 1
		cmd.Execute()
	oGrid.DataSource.Requery()
return

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Error = class::nativeObject_Error
endwith
*/
// Fired when an internal error occurs.
function nativeObject_Error(Error,Description)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	? Str(Description) 
return

local h,oGrid,rs,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderAppearance = 4
oGrid.ColumnAutoResize = false
rs = new OleAutoClient("ADODB.Recordset")
	rs.Open("Select * From Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb",1,3)
oGrid.DataSource = rs
// oGrid.ConditionalFormats.Add("%1=12345").BackColor = 0xf0f0f0
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%1=12345")
with (oGrid)
	TemplateDef = [dim var_ConditionalFormat]
	TemplateDef = var_ConditionalFormat
	Template = [var_ConditionalFormat.BackColor = 15790320]
endwith
var_Items = oGrid.Items
	// var_Items.LockedItemCount(0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.LockedItemCount(0) = 1]
	endwith
	h = var_Items.LockedItem(0,0)
	// var_Items.ItemDivider(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 0]
	endwith
	// var_Items.CellHasButton(h,0) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHasButton(h,0) = True]
	endwith
	// var_Items.CellValue(h,0) = "Requery (add a new record, using ADODB.Command)"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,0) = "Requery (add a new record, using ADODB.Command)"]
	endwith
	// var_Items.CellHAlignment(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHAlignment(h,0) = 1]
	endwith
oGrid.EndUpdate()

1113:
I am using DetectAddNew property, but no new items is added when AddNew is performed

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	ButtonClick = class::nativeObject_ButtonClick
endwith
*/
// Occurs when user clicks on the cell's button.
function nativeObject_ButtonClick(Item,ColIndex,Key)
	local var_Recordset
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	var_Recordset = oGrid.DataSource
		var_Recordset.AddNew("EmployeeID",123)
		var_Recordset.Update()
return

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Error = class::nativeObject_Error
endwith
*/
// Fired when an internal error occurs.
function nativeObject_Error(Error,Description)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	? Str(Description) 
return

local h,oGrid,rs,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderAppearance = 4
oGrid.ColumnAutoResize = false
rs = new OleAutoClient("ADODB.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb",1,3)
oGrid.DataSource = rs
var_Items = oGrid.Items
	// var_Items.LockedItemCount(0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.LockedItemCount(0) = 1]
	endwith
	h = var_Items.LockedItem(0,0)
	// var_Items.ItemDivider(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 0]
	endwith
	// var_Items.CellHasButton(h,0) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHasButton(h,0) = True]
	endwith
	// var_Items.CellValue(h,0) = "AddNew"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,0) = "AddNew"]
	endwith
	// var_Items.CellHAlignment(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHAlignment(h,0) = 1]
	endwith
oGrid.DetectAddNew = true
oGrid.DetectDelete = true
oGrid.EndUpdate()

1112:
I am skinning the control's header-bar, but the background of the header-bar is shown on each item in the filter-bar drop down panel. What can I do

local oGrid,var_Appearance,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABFgDg6AADACAxRDgMQBQKAAzQFAYcBqGqGAAGQZxYgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHLUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQGhsCYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU8lORLUi+M4zSBPcZVTRtGShPDBKTjMKKYgkG4lVpRNa0PC1GTzQ6mazkKQLRADDIDVbAeL3LiMBy9LyLLItQALByua5mWhbcZyBCOPgBTrRb5zO58FjuTK7YLjMB7NrUNYtFaUMy2OpOCADIaecTNcaWLxPF2MY1HWYxVj2Jw3DuRJonKYBgggSRAlIYw6B0ThGFgPAkFUDAhBMfZRiGNAkFECZnm4YQdneJwqnsSQrGAAhWAIJBJBIQgFCQIBiEIAglgqYo0i4V4MEgRI9gSToYFSb4Fk6Y4+BmBZhFOJgTC8TBogQAArgqco4muCZOkOMJtgmYpIjYKg7GKE4uCUK4AAKKg2DwI4DiCZw5k6KJ2D6D4OHiag4DwIxiiQAArAqMosnEPBPAOIhOg+DozjIJ4PGSY4iEwPAkhKLhHUUSQsnKFCnkYU9MjORhcCsAAIACLQ8iaSJ6FKC5jJoaobA8KYoACCRKnmMJzhuDpZnSboMCKGJ4nMPIPDmYAACwKIDk6CoLCeU40m6I5oliMoKDya" ;
 +"ICokLIpgoThviOKJoGYf4KmUKhMjMLJLCAAojCyaYoiYGoGmqM46CkOwPEoKonAACxKlSdItmiWBeBeDgrioNo3D0KxSlAAAtgsUpYnUPRPEoco8hCa+T40SxbBRj5tEsHJ1i6JhbGYS4ug8awelQLZAAKZI5C4DxrhYQ9ehmUppWiA48nAPRuFKYpiAAC47laZQ9iuKZSgOPotkuFI7C6C4gACPJAm8eQOhOQZoikDp3kCS5AACPoEk8fBGnqQgpDOSppD2TxjlyPZD6CfwekQTx5lKP5ImseZTCAL5MAMAAAkoTADmMLpIjISp+HSS4PgyMAADBzAHDSIoPCOUpWjObIKE8NJOHKIwPEaTprBsHpdjWLB9AieQ+DQYwQAAMR1EOZxWi+bx7HcWQ8msfRYnnDhQACRwxgwc5rGaMZPE0ZxqjWNZtgyRwAAyTZEnuXJzEyAx2kQcxNkye5cEy3cYAcANrGAIH4OAhx3gNGGPAfgIR8jBA4McBMARViHH4HQOYmxuCpF2MsecEQVBvGQCcIQvA6i2CAAIARAQ=")
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzQFAYcBqGqGAAGQZxYgmFgAQhFcZQSKUOQTDKMIziYBYJhEMwwDhEIwjHCEEhsGIbJAGQBJCjWGodQLOEgzNC0IxNFCQILhEZJADKII8TTOU5UPRESwTE4cKBmKhQCo2NpKR7VUTxCKQahLLivoCjBT8EzHMqtIzrCA6MpaP4pQjKcqwHJ8YyHEi0ZrjazKaj6T5AXDUcaWbbNVx3PK3aioOpLZrqOZZYzYFoABTuJzPMSyIhxXD8cweaZvSpLExVYK9BY3PbKMgxC77QgTIpDaQMNS6PjtF43PAALLFUaNYzoOKzABMHATBIXAYJCwIIR5G7ID4BbQcCQAHL9DBaEEIAEEISgGhMGZQmocgymmIRQkIEQ2BcGgbEIRQci8XaMBqTRVgSAZHG+S5pnOep+D6f4vjec5zn0fpfmgBgAH6TRoBYBoAh+eAmAiAgPFgNArgOQpIESdoEmCOAOAqBYfFGAgaEaBgYHYFYFmIB5UiGCJUgKCgmgeYoHk4BgCmKRQiCwApgHgYgyH8B54lQU4NkMeJlBoDgjkiXBTg0R54iYIR+koeQVBoKpkgkChKhEJBkF4SFEjkDgJhFQoeEmDJlBeehUhWJQJGIXoICWOQ6FeFIlhkfhlDsSJpiQVoamaSY2G6G5nAmRhpCOH5pkwVYdmeCZmHqHpnkmdhzhmaAIFiax8AABAEICA==")
oGrid.BackColorHeader = 0x1000000
oGrid.ForeColorHeader = 0x808080
oGrid.Template = [Background(0) = 33554432] // oGrid.Background(0) = 0x2000000
oGrid.Template = [Background(26) = 16777215] // oGrid.Background(26) = 0xffffff
oGrid.Template = [Background(27) = 65536] // oGrid.Background(27) = 0x10000
oGrid.Template = [Background(20) = 33521664] // oGrid.Background(20) = 0x1ff8000
oGrid.Template = [Background(21) = 15790320] // oGrid.Background(21) = 0xf0f0f0
oGrid.Template = [Background(32) = -1] // oGrid.Background(32) = -1
oGrid.HeaderHeight = 24
oGrid.BackColorLevelHeader = oGrid.BackColor
var_Column = oGrid.Columns.Add("Filter")
	var_Column.DisplayFilterButton = true
	var_Column.DisplayFilterPattern = false
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
	// var_Column.Def(52) = 2
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(52) = 2]
	endwith
	// var_Column.Def(53) = 2
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(53) = 2]
	endwith
var_Items = oGrid.Items
	var_Items.AddItem("A")
	var_Items.AddItem("B")
	var_Items.AddItem("C")
	var_Items.AddItem("D")
oGrid.EndUpdate()

1111:
How can I change the font for entire column (method 3)

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	var_Items = oGrid.Items
		// var_Items.CellFont(Item,1) = oGrid.Columns.Item(1).Data
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellFont(Item,1) = Me.Columns.Item(1).Data]
		endwith
		// var_Items.CellBold(Item,1) = true
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellBold(Item,1) = True]
		endwith
		// var_Items.CellForeColor(Item,1) = 0xff
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellForeColor(Item,1) = 255]
		endwith
return

local f,oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderHeight = 24
oGrid.HeaderAppearance = 4
oGrid.Columns.Add("C1")
var_Column = oGrid.Columns.Add("C2")
	var_Column.HTMLCaption = "<b><font Tahoma;14>C2"
	f = new OleAutoClient("StdFont")
		f.Name = "Tahoma"
		f.Size = 11
	var_Column.Data = f
var_Items = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem(10),1) = 11
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(10),1) = 11]
	endwith
	// var_Items.CellValue(var_Items.AddItem(12),1) = 13
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(12),1) = 13]
	endwith
oGrid.EndUpdate()

1110:
How can I change the font for entire column (method 2)

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local f,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	var_Items = oGrid.Items
		f = new OleAutoClient("StdFont")
			f.Name = "Tahoma"
			f.Size = 11
		// var_Items.CellFont(Item,1) = f
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellFont(Item,1) = f]
		endwith
		// var_Items.CellBold(Item,1) = true
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellBold(Item,1) = True]
		endwith
		// var_Items.CellForeColor(Item,1) = 0xff
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellForeColor(Item,1) = 255]
		endwith
return

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderHeight = 24
oGrid.HeaderAppearance = 4
oGrid.Columns.Add("C1")
// oGrid.Columns.Add("C2").HTMLCaption = "<b><font Tahoma;14>C2"
var_Column = oGrid.Columns.Add("C2")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.HTMLCaption = "<b><font Tahoma;14>C2"]
endwith
var_Items = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem(10),1) = 11
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(10),1) = 11]
	endwith
	// var_Items.CellValue(var_Items.AddItem(12),1) = 13
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(12),1) = 13]
	endwith
oGrid.EndUpdate()

1109:
How can I change the font for entire column (method 1)

local f,oGrid,var_Column,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_ConditionalFormat = oGrid.ConditionalFormats.Add("1")
	var_ConditionalFormat.Bold = true
	var_ConditionalFormat.ForeColor = 0xff
	f = new OleAutoClient("StdFont")
		f.Name = "Tahoma"
		f.Size = 11
	var_ConditionalFormat.Font = f
	var_ConditionalFormat.ApplyTo = 1 /*0x1 | */
oGrid.HeaderHeight = 24
oGrid.HeaderAppearance = 4
oGrid.Columns.Add("C1")
// oGrid.Columns.Add("C2").HTMLCaption = "<b><font Tahoma;14>C2"
var_Column = oGrid.Columns.Add("C2")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.HTMLCaption = "<b><font Tahoma;14>C2"]
endwith
var_Items = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem(10),1) = 11
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(10),1) = 11]
	endwith
	// var_Items.CellValue(var_Items.AddItem(12),1) = 13
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(12),1) = 13]
	endwith
oGrid.EndUpdate()

1108:
I am using ExComboBox as an user editor, how can I display a different column

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	UserEditorClose = class::nativeObject_UserEditorClose
endwith
*/
// Fired the user editor is about to be opened.
function nativeObject_UserEditorClose(Object,Item,ColIndex)
	/* Items.CellValue(Item,ColIndex) = Object.Select("OrderID") */
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
return

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	UserEditorOleEvent = class::nativeObject_UserEditorOleEvent
endwith
*/
// Occurs when an user editor fires an event.
function nativeObject_UserEditorOleEvent(Object,Ev,CloseEditor,Item,ColIndex)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	? Str(Ev) 
return

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	UserEditorOpen = class::nativeObject_UserEditorOpen
endwith
*/
// Occurs when an user editor is about to be opened.
function nativeObject_UserEditorOpen(Object,Item,ColIndex)
	/* Object.Select("OrderID") = Me.Items.CellValue(Item,ColIndex) */
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
return

local h,oGrid,rs,var_Column,var_Column1,var_ComboBox,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.SortOnClick = 0
var_Editor = oGrid.Columns.Add("Exontrol.ComboBox").Editor
	var_Editor.EditType = 16
	var_Editor.UserEditor("Exontrol.ComboBox","")
	var_ComboBox = var_Editor.UserEditorObject
		var_ComboBox.BeginUpdate()
		var_ComboBox.Style = 2
		var_ComboBox.ColumnAutoResize = false
		rs = new OleAutoClient("ADOR.Recordset")
			rs.Open("Orders","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB",3,3)
		var_ComboBox.DataSource = rs
		var_ComboBox.Alignment = 0
		var_ComboBox.IntegralHeight = true
		var_ComboBox.MinHeightList = 128
		var_ComboBox.MinWidthList = 648
		var_ComboBox.HeaderHeight = 36
		var_ComboBox.AllowSizeGrip = true
		var_ComboBox.SingleEdit = true
		var_ComboBox.LabelColumnIndex = 7
		var_ComboBox.SearchColumnIndex = 0
		var_Column = var_ComboBox.Columns.Item(0)
			var_Column.HeaderBold = true
			var_Column.HTMLCaption = "OrderID<br><fgcolor=808080>(search)"
		var_Column1 = var_ComboBox.Columns.Item(7)
			var_Column1.HeaderBold = true
			var_Column1.HTMLCaption = "ShipName<br><fgcolor=808080>(display)"
			var_Column1.Width = 128
		var_ComboBox.UseTabKey = false
		var_ComboBox.EndUpdate()
oGrid.DrawGridLines = -2
oGrid.TreeColumnIndex = -1
oGrid.DefaultItemHeight = 21
var_Items = oGrid.Items
	h = var_Items.AddItem("shows always the drop-down editor")
	// var_Items.CellHAlignment(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHAlignment(h,0) = 1]
	endwith
	// var_Items.ItemDivider(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 0]
	endwith
	// var_Items.ItemDividerLineAlignment(h) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDividerLineAlignment(h) = 1]
	endwith
	// var_Items.SelectableItem(h) = false
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.SelectableItem(h) = False]
	endwith
	// var_Items.EnableItem(h) = false
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.EnableItem(h) = False]
	endwith
	// var_Items.CellEditorVisible(var_Items.AddItem(10248),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellEditorVisible(AddItem(10248),0) = 1]
	endwith
	// var_Items.CellEditorVisible(var_Items.AddItem(10249),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellEditorVisible(AddItem(10249),0) = 1]
	endwith
	// var_Items.CellEditorVisible(var_Items.AddItem(10250),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellEditorVisible(AddItem(10250),0) = 1]
	endwith
	h = var_Items.AddItem("shows the drop-down editor when user clicks it")
	// var_Items.CellHAlignment(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHAlignment(h,0) = 1]
	endwith
	// var_Items.ItemDivider(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 0]
	endwith
	// var_Items.ItemDividerLineAlignment(h) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDividerLineAlignment(h) = 1]
	endwith
	// var_Items.SelectableItem(h) = false
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.SelectableItem(h) = False]
	endwith
	// var_Items.EnableItem(h) = false
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.EnableItem(h) = False]
	endwith
	var_Items.AddItem(10248)
	var_Items.AddItem(10249)
	var_Items.AddItem(10250)
oGrid.EndUpdate()

1107:
The ItemHeight property is not working (method 2)

local h,oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
oGrid.ScrollBySingleLine = true
// oGrid.Columns.Add("Column").Width = 128
var_Column = oGrid.Columns.Add("Column")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.Width = 128]
endwith
var_Items = oGrid.Items
	// var_Items.CellSingleLine(var_Items.AddItem("This is a bit of text that should break the line"),0) = 0
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellSingleLine(AddItem("This is a bit of text that should break the line"),0) = 0]
	endwith
	h = var_Items.AddItem("")
	// var_Items.ItemDivider(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 0]
	endwith
	// var_Items.SelectableItem(h) = false
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.SelectableItem(h) = False]
	endwith
	// var_Items.ItemDividerLineAlignment(h) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDividerLineAlignment(h) = 1]
	endwith
	// var_Items.ItemHeight(h) = 3
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemHeight(h) = 3]
	endwith
	// var_Items.CellSingleLine(var_Items.AddItem("This is a bit of text that should break the line"),0) = 0
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellSingleLine(AddItem("This is a bit of text that should break the line"),0) = 0]
	endwith
oGrid.EndUpdate()

1106:
The ItemHeight property is not working (method 1)

local h,oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
oGrid.ScrollBySingleLine = true
var_Column = oGrid.Columns.Add("Column")
	var_Column.Width = 128
	// var_Column.Def(16) = 0
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(16) = 0]
	endwith
var_Items = oGrid.Items
	var_Items.AddItem("This is a bit of text that should break the line")
	h = var_Items.AddItem("")
	// var_Items.ItemDivider(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 0]
	endwith
	// var_Items.SelectableItem(h) = false
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.SelectableItem(h) = False]
	endwith
	// var_Items.ItemDividerLineAlignment(h) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDividerLineAlignment(h) = 1]
	endwith
	// var_Items.ItemMinHeight(h) = 3
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemMinHeight(h) = 3]
	endwith
	// var_Items.ItemMaxHeight(h) = 3
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemMaxHeight(h) = 3]
	endwith
	var_Items.AddItem("This is a bit of text that should break the line")
oGrid.EndUpdate()

1105:
How do I add a total field locked at the bottom of the control

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddGroupItem = class::nativeObject_AddGroupItem
endwith
*/
// Occurs after a new Group Item has been inserted to Items collection.
function nativeObject_AddGroupItem(Item)
	local var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	var_Items = oGrid.Items
		// var_Items.ItemDividerLine(Item) = 0
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.ItemDividerLine(Item) = 0]
		endwith
		// var_Items.FormatCell(Item,var_Items.GroupItem(Item)) = "value + ` Min: <b>` + %13 + `</b> Max: <b>` + %14 + `</b> Sum: <b>` + %15 + `</b>, of Freight column`"
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.FormatCell(Item,GroupItem(Item)) = "value + ` Min: <b>` + %13 + `</b> Max: <b>` + %14 + `</b> Sum: <b>` + %15 + `</b>, of Freight column`"]
		endwith
		// var_Items.CellValue(Item,"Min") = "min(current,all,dbl(%6))"
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValue(Item,"Min") = "min(current,all,dbl(%6))"]
		endwith
		// var_Items.CellValueFormat(Item,"Min") = 4
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValueFormat(Item,"Min") = 4]
		endwith
		// var_Items.CellValue(Item,"Max") = "max(current,all,dbl(%6))"
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValue(Item,"Max") = "max(current,all,dbl(%6))"]
		endwith
		// var_Items.CellValueFormat(Item,"Max") = 4
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValueFormat(Item,"Max") = 4]
		endwith
		// var_Items.CellValue(Item,"Sum") = "sum(current,all,dbl(%6))"
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValue(Item,"Sum") = "sum(current,all,dbl(%6))"]
		endwith
		// var_Items.CellValueFormat(Item,"Sum") = 4
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValueFormat(Item,"Sum") = 4]
		endwith
		// var_Items.ItemBackColor(Item) = 0xf0f0f0
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.ItemBackColor(Item) = 15790320]
		endwith
return

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Change = class::nativeObject_Change
endwith
*/
// Occurs when the user changes the cell's content.
function nativeObject_Change(Item,ColIndex,NewValue)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local hL,oGrid,rs,var_Column,var_Column1,var_Column2,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HasLines = 0
oGrid.Template = [Description(26) = "Show/Hide"] // oGrid.Description(26) = "Show/Hide"
oGrid.ColumnsFloatBarSortOrder = 1
oGrid.ColumnsFloatBarVisible = 2
oGrid.ColumnAutoResize = false
oGrid.BackColorSortBar = 0xf0f0f0
rs = new OleAutoClient("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB",3,3)
oGrid.DataSource = rs
oGrid.SingleSort = false
oGrid.SortBarVisible = true
oGrid.AllowGroupBy = true
oGrid.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
var_Columns = oGrid.Columns
	var_Column = var_Columns.Add("Min")
		var_Column.Visible = false
		var_Column.AllowDragging = false
	var_Column = var_Columns.Add("Max")
		var_Column.Visible = false
		var_Column.Visible = false
		var_Column.AllowDragging = false
	var_Column1 = var_Columns.Add("Sum")
		var_Column1.Visible = false
		var_Column1.Visible = false
		var_Column1.AllowDragging = false
var_Column2 = oGrid.Columns.Item("Freight")
	var_Column2.FormatColumn = "currency(value)"
	// var_Column2.Def(4) = 12895487
	with (oGrid)
		TemplateDef = [dim var_Column2]
		TemplateDef = var_Column2
		Template = [var_Column2.Def(4) = 12895487]
	endwith
	// var_Column2.Def(7) = var_Column2.Def(4)
	with (oGrid)
		TemplateDef = [dim var_Column2]
		TemplateDef = var_Column2
		Template = [var_Column2.Def(7) = Def(4)]
	endwith
	var_Column2.HeaderBold = true
	var_Column2.AllowGroupBy = false
	var_Column2.Alignment = 2
oGrid.ScrollBySingleLine = false
var_Items = oGrid.Items
	// var_Items.LockedItemCount(2) = 2
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.LockedItemCount(2) = 2]
	endwith
	hL = var_Items.LockedItem(2,0)
	// var_Items.ItemDivider(hL) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemDivider(hL) = 0]
	endwith
	// var_Items.ItemHeight(hL) = 3
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemHeight(hL) = 3]
	endwith
	// var_Items.ItemDividerLineAlignment(hL) = 2
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemDividerLineAlignment(hL) = 2]
	endwith
	// var_Items.ItemDividerLine(hL) = 2
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemDividerLine(hL) = 2]
	endwith
	hL = var_Items.LockedItem(2,1)
	// var_Items.CellValue(hL,6) = "sum(all,rec,dbl(%6))"
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.CellValue(hL,6) = "sum(all,rec,dbl(%6))"]
	endwith
	// var_Items.CellValueFormat(hL,6) = 4
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.CellValueFormat(hL,6) = 4]
	endwith
	// var_Items.ItemHeight(hL) = 24
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemHeight(hL) = 24]
	endwith
	// var_Items.ItemBold(hL) = true
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemBold(hL) = True]
	endwith
oGrid.Columns.Item("EmployeeID").SortOrder = true
oGrid.EndUpdate()

1104:
How can I add a total field, when I use grouping

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddGroupItem = class::nativeObject_AddGroupItem
endwith
*/
// Occurs after a new Group Item has been inserted to Items collection.
function nativeObject_AddGroupItem(Item)
	local var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	var_Items = oGrid.Items
		// var_Items.ItemDividerLine(Item) = 0
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.ItemDividerLine(Item) = 0]
		endwith
		// var_Items.FormatCell(Item,var_Items.GroupItem(Item)) = "value + ` Min: <b>` + %13 + `</b> Max: <b>` + %14 + `</b> Sum: <b>` + %15 + `</b>, of Freight column`"
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.FormatCell(Item,GroupItem(Item)) = "value + ` Min: <b>` + %13 + `</b> Max: <b>` + %14 + `</b> Sum: <b>` + %15 + `</b>, of Freight column`"]
		endwith
		// var_Items.CellValue(Item,"Min") = "min(current,all,dbl(%6))"
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValue(Item,"Min") = "min(current,all,dbl(%6))"]
		endwith
		// var_Items.CellValueFormat(Item,"Min") = 4
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValueFormat(Item,"Min") = 4]
		endwith
		// var_Items.CellValue(Item,"Max") = "max(current,all,dbl(%6))"
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValue(Item,"Max") = "max(current,all,dbl(%6))"]
		endwith
		// var_Items.CellValueFormat(Item,"Max") = 4
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValueFormat(Item,"Max") = 4]
		endwith
		// var_Items.CellValue(Item,"Sum") = "sum(current,all,dbl(%6))"
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValue(Item,"Sum") = "sum(current,all,dbl(%6))"]
		endwith
		// var_Items.CellValueFormat(Item,"Sum") = 4
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellValueFormat(Item,"Sum") = 4]
		endwith
		// var_Items.ItemBackColor(Item) = 0xf0f0f0
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.ItemBackColor(Item) = 15790320]
		endwith
return

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Change = class::nativeObject_Change
endwith
*/
// Occurs when the user changes the cell's content.
function nativeObject_Change(Item,ColIndex,NewValue)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local hL,oGrid,rs,var_Column,var_Column1,var_Column2,var_Column3,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HasLines = 0
oGrid.ColumnAutoResize = false
oGrid.BackColorSortBar = 0xf0f0f0
rs = new OleAutoClient("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB",3,3)
oGrid.DataSource = rs
oGrid.SingleSort = false
oGrid.SortBarVisible = true
oGrid.AllowGroupBy = true
oGrid.Columns.Item(1).SortOrder = true
var_Columns = oGrid.Columns
	// var_Columns.Add("Min").Visible = false
	var_Column = var_Columns.Add("Min")
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Visible = False]
	endwith
	// var_Columns.Add("Max").Visible = false
	var_Column1 = var_Columns.Add("Max")
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.Visible = False]
	endwith
	// var_Columns.Add("Sum").Visible = false
	var_Column2 = var_Columns.Add("Sum")
	with (oGrid)
		TemplateDef = [dim var_Column2]
		TemplateDef = var_Column2
		Template = [var_Column2.Visible = False]
	endwith
var_Column3 = oGrid.Columns.Item("Freight")
	// var_Column3.Def(4) = 12895487
	with (oGrid)
		TemplateDef = [dim var_Column3]
		TemplateDef = var_Column3
		Template = [var_Column3.Def(4) = 12895487]
	endwith
	// var_Column3.Def(7) = var_Column3.Def(4)
	with (oGrid)
		TemplateDef = [dim var_Column3]
		TemplateDef = var_Column3
		Template = [var_Column3.Def(7) = Def(4)]
	endwith
	var_Column3.HeaderBold = true
	var_Column3.AllowGroupBy = false
oGrid.ScrollBySingleLine = false
var_Items = oGrid.Items
	// var_Items.LockedItemCount(2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.LockedItemCount(2) = 1]
	endwith
	hL = var_Items.LockedItem(2,0)
	// var_Items.ItemDivider(hL) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemDivider(hL) = 0]
	endwith
	// var_Items.ItemHeight(hL) = 24
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemHeight(hL) = 24]
	endwith
	// var_Items.ItemDividerLineAlignment(hL) = 2
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemDividerLineAlignment(hL) = 2]
	endwith
	// var_Items.ItemDividerLine(hL) = 2
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.ItemDividerLine(hL) = 2]
	endwith
	// var_Items.CellValue(hL,0) = "sum(all,rec,dbl(%6))"
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.CellValue(hL,0) = "sum(all,rec,dbl(%6))"]
	endwith
	// var_Items.CellValueFormat(hL,0) = 5 /*exTotalField | exHTML*/
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.CellValueFormat(hL,0) = 5]
	endwith
	// var_Items.CellHAlignment(hL,0) = 2
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.CellHAlignment(hL,0) = 2]
	endwith
	// var_Items.FormatCell(hL,0) = "'Freight: <bgcolor=FFC4C4> '+(value format ``) + ` `"
	with (oGrid)
		TemplateDef = [dim var_Items,hL]
		TemplateDef = var_Items
		TemplateDef = hL
		Template = [var_Items.FormatCell(hL,0) = "'Freight: <bgcolor=FFC4C4> '+(value format ``) + ` `"]
	endwith
oGrid.EndUpdate()

1103:
How do I use the ColumnsFloatBarVisible on exColumnsFloatBarVisibleIncludeCheckColumns

local oGrid,var_Column,var_Column1,var_Columns

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
oGrid.HeaderAppearance = 4
var_Columns = oGrid.Columns
	var_Columns.Add("City")
	// var_Columns.Add("Start").Visible = false
	var_Column = var_Columns.Add("Start")
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Visible = False]
	endwith
	// var_Columns.Add("End").Visible = false
	var_Column1 = var_Columns.Add("End")
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.Visible = False]
	endwith
oGrid.Template = [Description(26) = "Show/Hide"] // oGrid.Description(26) = "Show/Hide"
oGrid.ColumnsFloatBarSortOrder = 1
oGrid.ColumnsFloatBarVisible = 2
oGrid.EndUpdate()

1102:
How do I use the ColumnsFloatBarVisible on exColumnsFloatBarVisibleIncludeHiddenColumn

local oGrid,var_Column,var_Column1,var_Columns

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
oGrid.HeaderAppearance = 4
var_Columns = oGrid.Columns
	var_Columns.Add("City")
	// var_Columns.Add("Start").Visible = false
	var_Column = var_Columns.Add("Start")
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Visible = False]
	endwith
	// var_Columns.Add("End").Visible = false
	var_Column1 = var_Columns.Add("End")
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.Visible = False]
	endwith
oGrid.Template = [Description(26) = "Show"] // oGrid.Description(26) = "Show"
oGrid.ColumnsFloatBarVisible = -1
oGrid.ColumnsFloatBarSortOrder = 1
oGrid.EndUpdate()

1101:
How do I use the ColumnsFloatBarVisible on exColumnsFloatBarVisibleIncludeGroupByColumns

local oGrid,var_Columns

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
oGrid.HeaderAppearance = 4
var_Columns = oGrid.Columns
	var_Columns.Add("City")
	var_Columns.Add("Start")
	var_Columns.Add("End")
oGrid.AllowGroupBy = true
oGrid.SortBarVisible = true
oGrid.SortBarCaption = "Drag a <b>column</b> header here to group by that column."
oGrid.BackColorSortBar = 0xfafafa
oGrid.Template = [Description(26) = "Group-By"] // oGrid.Description(26) = "Group-By"
oGrid.ColumnsFloatBarVisible = 1
oGrid.ColumnsFloatBarSortOrder = 1
oGrid.Columns.Item("City").SortOrder = 1
oGrid.EndUpdate()

1100:
How can I advance to the next line, once the user presses the ENTER key

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	KeyDown = class::nativeObject_KeyDown
endwith
*/
// Occurs when the user presses a key while an object has the focus.
function nativeObject_KeyDown(KeyCode,Shift)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	? "KeyCode Before:" 
	? Str(KeyCode) 
	KeyCode = oGrid.FormatABC("value = 13 ? 40 : value",KeyCode)
	? "KeyCode After:" 
	? Str(KeyCode) 
return

local h0,oGrid,var_Columns,var_Editor,var_Editor1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Columns = oGrid.Columns
	var_Editor = var_Columns.Add("A").Editor
		var_Editor.Appearance = 4
		var_Editor.EditType = 1
	var_Editor1 = var_Columns.Add("B").Editor
		var_Editor1.Appearance = 4
		var_Editor1.EditType = 1
var_Items = oGrid.Items
	h0 = var_Items.AddItem("Item A.1")
	// var_Items.CellValue(h0,1) = "Item B.1"
	with (oGrid)
		TemplateDef = [dim var_Items,h0]
		TemplateDef = var_Items
		TemplateDef = h0
		Template = [var_Items.CellValue(h0,1) = "Item B.1"]
	endwith
	h0 = var_Items.AddItem("Item A.2")
	// var_Items.CellValue(h0,1) = "Item B.2"
	with (oGrid)
		TemplateDef = [dim var_Items,h0]
		TemplateDef = var_Items
		TemplateDef = h0
		Template = [var_Items.CellValue(h0,1) = "Item B.2"]
	endwith
oGrid.EndUpdate()

1099:
I am using AddNew to add new records, but I can not see them into the control

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	ButtonClick = class::nativeObject_ButtonClick
endwith
*/
// Occurs when user clicks on the cell's button.
function nativeObject_ButtonClick(Item,ColIndex,Key)
	local var_Recordset
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	var_Recordset = oGrid.DataSource
		var_Recordset.AddNew()
		var_Recordset.Fields.Item("A").Value = "new A"
		var_Recordset.Fields.Item("B").Value = "new B"
		var_Recordset.Update()
return

local h,oGrid,rs,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderAppearance = 4
rs = new OleAutoClient("ADODB.Recordset")
	rs.Fields.Append("A",8)
	rs.Fields.Append("B",8)
	rs.Open()
	rs.AddNew()
	rs.Fields.Item("A").Value = "Item A.1"
	rs.Fields.Item("B").Value = "Item B.1"
	rs.Update()
	rs.AddNew()
	rs.Fields.Item("A").Value = "Item A.2"
	rs.Fields.Item("B").Value = "Item B.2"
	rs.Update()
oGrid.DataSource = rs
var_Items = oGrid.Items
	// var_Items.LockedItemCount(0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.LockedItemCount(0) = 1]
	endwith
	h = var_Items.LockedItem(0,0)
	// var_Items.ItemDivider(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 0]
	endwith
	// var_Items.CellHasButton(h,0) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHasButton(h,0) = True]
	endwith
	// var_Items.CellValue(h,0) = "AddNew"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,0) = "AddNew"]
	endwith
	// var_Items.CellHAlignment(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellHAlignment(h,0) = 1]
	endwith
oGrid.DetectAddNew = true
oGrid.DetectDelete = true
oGrid.EndUpdate()

1098:
How can I create a new ADO recordset

local oGrid,rs

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
rs = new OleAutoClient("ADODB.Recordset")
	rs.Fields.Append("A",8)
	rs.Fields.Append("B",8)
	rs.Open()
	rs.AddNew()
	rs.Fields.Item("A").Value = "Item A.1"
	rs.Fields.Item("B").Value = "Item B.1"
	rs.Update()
	rs.AddNew()
	rs.Fields.Item("A").Value = "Item A.2"
	rs.Fields.Item("B").Value = "Item B.2"
	rs.Update()
oGrid.DataSource = rs
oGrid.EndUpdate()

1097:
Do do I get the DAO version I have installed

local oGrid

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
? new OleAutoClient("DAO.DBEngine.35").Version 
? new OleAutoClient("DAO.DBEngine.36").Version 
? new OleAutoClient("DAO.DBEngine.120").Version 

1096:
How do I get a list of interfaces the object implemenets

local oGrid,rs,var_PrivDBEngine

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
var_PrivDBEngine = new OleAutoClient("DAO.DBEngine.120")
	rs = var_PrivDBEngine.OpenDatabase("C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb").OpenRecordset("Orders")
? new OleAutoClient("Exontrol.PropertiesList").Interfaces(rs) 
oGrid.DataSource = rs
oGrid.EndUpdate()

1095:
Do do I get the ADO version I have installed

local oGrid

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
? "ADO Version:" 
? new OleAutoClient("ADODB.Connection").Version 

1094:
DAO, ACCDB, 120

local oGrid,rs,var_PrivDBEngine

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
var_PrivDBEngine = new OleAutoClient("DAO.DBEngine.120")
	rs = var_PrivDBEngine.OpenDatabase("C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb").OpenRecordset("Orders")
oGrid.DataSource = rs
oGrid.EndUpdate()

1093:
DAO, MDB, 120

local oGrid,rs,var_PrivDBEngine

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
var_PrivDBEngine = new OleAutoClient("DAO.DBEngine.120")
	rs = var_PrivDBEngine.OpenDatabase("C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB").OpenRecordset("Orders")
oGrid.DataSource = rs
oGrid.EndUpdate()

1092:
DAO, MDB

local oGrid,rs,var_PrivDBEngine

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
var_PrivDBEngine = new OleAutoClient("DAO.DBEngine.36")
	rs = var_PrivDBEngine.OpenDatabase("C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB").OpenRecordset("Orders")
oGrid.DataSource = rs
oGrid.EndUpdate()

1091:
ADODB, ACCDB, x64

local oGrid,rs

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
rs = new OleAutoClient("ADODB.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb",1,1)
oGrid.DataSource = rs
oGrid.EndUpdate()

1090:
ADOR, ACCDB

local oGrid,rs

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
rs = new OleAutoClient("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\Access2007\sample.accdb",3,3)
oGrid.DataSource = rs
oGrid.EndUpdate()

1089:
ADODB, MDB

local oGrid,rs

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
rs = new OleAutoClient("ADODB.Recordset")
	rs.Open("Orders","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB",3,3)
oGrid.DataSource = rs
oGrid.EndUpdate()

1088:
ADOR, MDB

local oGrid,rs

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = false
rs = new OleAutoClient("ADOR.Recordset")
	rs.Open("Orders","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExGrid\Sample\SAMPLE.MDB",3,3)
oGrid.DataSource = rs
oGrid.EndUpdate()

1087:
How can I display the row on multiple lines (excrd)

local oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderAppearance = 4
oGrid.SelBackMode = 1
var_Column = oGrid.Columns.Add("Default")
	// var_Column.Def(32) = "[b=0]60;1[b=15]:60,((20;" + ["] + "<fgcolor=808080>Dateigröße" + ["] + "[b=1][a=2]:120,2[b=15])/(20;" + ["] + "<fgcolor=808080>Erstellt am" + ["] + "[a=2]:120,3[b=15])/(20;" + ["] + "<fgcolor=808080>Zuletzt bearbeitet" + ["] + "[b=4][a=2]:120,4[b=15]))"
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(32) = "[b=0]60;1[b=15]:60,((20;""<fgcolor=808080>Dateigröße""[b=1][a=2]:120,2[b=15])/(20;""<fgcolor=808080>Erstellt am""[a=2]:120,3[b=15])/(20;""<fgcolor=808080>Zuletzt bearbeitet""[b=4][a=2]:120,4[b=15]))"]
	endwith
	var_Column.AllowSort = false
// oGrid.Columns.Add(Str(1)).Visible = false
var_Column1 = oGrid.Columns.Add(Str(1))
with (oGrid)
	TemplateDef = [dim var_Column1]
	TemplateDef = var_Column1
	Template = [var_Column1.Visible = False]
endwith
var_Column2 = oGrid.Columns.Add(Str(2))
	var_Column2.Visible = false
	var_Column2.Editor.EditType = 1
	var_Column2.FormatColumn = "1 index `A-Z`"
var_Column3 = oGrid.Columns.Add(Str(3))
	var_Column3.Visible = false
	var_Column3.Editor.EditType = 1
	var_Column3.FormatColumn = "1 index ``"
var_Column4 = oGrid.Columns.Add(Str(4))
	var_Column4.Visible = false
	var_Column4.Editor.EditType = 1
	var_Column4.FormatColumn = "date(``)"
oGrid.DefaultItemHeight = 48
oGrid.DrawGridLines = -2
oGrid.GridLineStyle = 48
oGrid.Template = [ViewModeOption(0,0) = 1] // oGrid.ViewModeOption(0,0) = 1
oGrid.Template = [ViewModeOption(0,1) = 1] // oGrid.ViewModeOption(0,1) = 1
var_Items = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem(""),1) = "One"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(""),1) = "One"]
	endwith
	// var_Items.CellValue(var_Items.AddItem(""),1) = "Two"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(""),1) = "Two"]
	endwith
	// var_Items.CellValue(var_Items.AddItem(""),1) = "Three"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(""),1) = "Three"]
	endwith
oGrid.EndUpdate()

1086:
Type of wraps the cell's caption support (Sample 2)

local oGrid,var_Column,var_Column1,var_Column2,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderSingleLine = false
oGrid.HeaderHeight = 36
oGrid.DrawGridLines = -2
oGrid.ColumnAutoResize = false
oGrid.ScrollBySingleLine = true
var_Columns = oGrid.Columns
	var_Column = var_Columns.Add("Single-Line (exCaptionSingleLine)")
		var_Column.Width = 96
		// var_Column.Def(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(17) = 1]
		endwith
		// var_Column.Def(16) = -1
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(16) = -1]
		endwith
	var_Column1 = var_Columns.Add("Word-Wrap (exCaptionWordWrap)")
		var_Column1.Width = 96
		// var_Column1.Def(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(17) = 1]
		endwith
		// var_Column1.Def(16) = 0
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(16) = 0]
		endwith
		var_Column1.FormatColumn = "%0"
	var_Column2 = var_Columns.Add("Break-Wrap (exCaptionBreakWrap)")
		var_Column2.Width = 96
		// var_Column2.Def(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(17) = 1]
		endwith
		// var_Column2.Def(16) = 1
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(16) = 1]
		endwith
		var_Column2.FormatColumn = "%0"
var_Items = oGrid.Items
	var_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.")
	var_Items.AddItem("This is the <b>first</b> line.\r\nThis is the <b>second</b> line.\r\nThis is the <b>third</b> line.")
oGrid.EndUpdate()

1085:
Type of wraps the cell's caption support (Sample 1)

local h,oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderSingleLine = false
oGrid.HeaderHeight = 36
oGrid.DrawGridLines = -2
oGrid.ColumnAutoResize = false
oGrid.ScrollBySingleLine = true
// oGrid.Columns.Add("Default").Width = 128
var_Column = oGrid.Columns.Add("Default")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.Width = 128]
endwith
var_Items = oGrid.Items
	h = var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
	h = var_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.")
	// var_Items.CellValueFormat(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValueFormat(h,0) = 1]
	endwith
	h = var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
	// var_Items.CellSingleLine(h,0) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellSingleLine(h,0) = 0]
	endwith
	h = var_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.")
	// var_Items.CellValueFormat(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValueFormat(h,0) = 1]
	endwith
	// var_Items.CellSingleLine(h,0) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellSingleLine(h,0) = 0]
	endwith
	h = var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
	// var_Items.CellSingleLine(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellSingleLine(h,0) = 1]
	endwith
	h = var_Items.AddItem("This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line.")
	// var_Items.CellValueFormat(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValueFormat(h,0) = 1]
	endwith
	// var_Items.CellSingleLine(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellSingleLine(h,0) = 1]
	endwith
oGrid.EndUpdate()

1084:
Can I break the cell's caption using the line break <br> or \r\n (Sample 2)

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.DrawGridLines = -2
oGrid.ColumnAutoResize = false
oGrid.ScrollBySingleLine = true
// oGrid.Columns.Add("Default").Width = 128
var_Column = oGrid.Columns.Add("Default")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.Width = 128]
endwith
var_Items = oGrid.Items
	// var_Items.CellSingleLine(var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line."),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellSingleLine(AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line."),0) = 1]
	endwith
	var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
oGrid.EndUpdate()

1083:
Can I break the cell's caption using the line break <br> or \r\n (Sample 1)

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.DrawGridLines = -2
oGrid.ColumnAutoResize = false
oGrid.ScrollBySingleLine = true
var_Column = oGrid.Columns.Add("Default")
	var_Column.Width = 128
	// var_Column.Def(16) = 1
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(16) = 1]
	endwith
var_Items = oGrid.Items
	var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
	var_Items.AddItem("This is the first line.\r\nThis is the second line.\r\nThis is the third line.")
oGrid.EndUpdate()

1082:
How can I change the visual appearance/color of the Filter For ... field

local h,oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
oGrid.BackColorHeader = 0x1
oGrid.ForeColorHeader = 0xffffff
oGrid.Template = [Background(26) = BackColorHeader] // oGrid.Background(26) = oGrid.BackColorHeader
oGrid.Template = [Background(27) = ForeColorHeader] // oGrid.Background(27) = oGrid.ForeColorHeader
oGrid.Template = [Background(0) = 15790320] // oGrid.Background(0) = 0xf0f0f0
oGrid.Template = [Background(32) = -1] // oGrid.Background(32) = -1
oGrid.HeaderAppearance = 5
var_Column = oGrid.Columns.Add("Items")
	var_Column.FilterOnType = true
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 2
var_Items = oGrid.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
oGrid.EndUpdate()

1081:
How can I display the cell's caption without spaces on both sides

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = true
var_Column = oGrid.Columns.Add("Default")
	// var_Column.Def(17) = 1
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(17) = 1]
	endwith
	var_Column.FormatColumn = "((trim(value) replace `   ` with ` `) replace `  ` with ` `) replace ` ` with `<bgcolor=FF0000> </bgcolor>`"
var_Items = oGrid.Items
	var_Items.AddItem("")
	var_Items.AddItem("Item A")
	var_Items.AddItem("    Item B")
	var_Items.AddItem("        Item   C    ")
oGrid.EndUpdate()

1080:
How can I highlight the spaces within the column (sample 2)

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = true
var_Column = oGrid.Columns.Add("Default")
	// var_Column.Def(17) = 1
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(17) = 1]
	endwith
	var_Column.FormatColumn = "`'` + ( value replace ` ` with `_` ) + `'`"
var_Items = oGrid.Items
	var_Items.AddItem("")
	var_Items.AddItem("Item A")
	var_Items.AddItem("    Item B")
	var_Items.AddItem("        Item   C    ")
oGrid.EndUpdate()

1079:
How can I highlight the spaces within the column (sample 1)

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = true
var_Column = oGrid.Columns.Add("Default")
	// var_Column.Def(17) = 1
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(17) = 1]
	endwith
	var_Column.FormatColumn = "len(value) = 0 ? `<bgcolor=FF0000> </bgcolor>` : ( value replace ` ` with `<bgcolor=FF0000> </bgcolor>` )"
var_Items = oGrid.Items
	var_Items.AddItem("")
	var_Items.AddItem("Item A")
	var_Items.AddItem("    Item B")
	var_Items.AddItem("        Item   C    ")
oGrid.EndUpdate()

1078:
How can I change the visual aspect of the drop down filter-calendar

local oGrid,var_Column

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Template = [Background(26) = 65536] // oGrid.Background(26) = 0x10000
oGrid.Template = [Background(27) = 16777215] // oGrid.Background(27) = 0xffffff
oGrid.Template = [Background(12) = 16777215] // oGrid.Background(12) = 0xffffff
oGrid.Template = [Background(8) = Background(26)] // oGrid.Background(8) = oGrid.Background(26)
oGrid.Template = [Background(11) = 8421504] // oGrid.Background(11) = 0x808080
var_Column = oGrid.Columns.Add("Date")
	var_Column.FilterType = 4
	var_Column.DisplayFilterButton = true
	var_Column.DisplayFilterDate = true
	var_Column.DisplayFilterPattern = false
oGrid.EndUpdate()

1077:
How can I hide the filter bar description

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("Filter")
	var_Column.DisplayFilterButton = true
	var_Column.FilterType = 240
	var_Column.Filter = "B"
var_Items = oGrid.Items
	var_Items.AddItem("A")
	var_Items.AddItem("B")
	var_Items.AddItem("C")
oGrid.ApplyFilter()
oGrid.FilterBarHeight = 0
oGrid.EndUpdate()

1076:
Export Data in HTML format

local h,oGrid,sFile,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6,var_Columns,var_ConditionalFormat,var_ConditionalFormat1,var_ConditionalFormat2,var_ConditionalFormats,var_Items,var_ShellBrowserWindow

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
oGrid.BackColorAlternate = 0xf0f0f0
oGrid.DrawGridLines = -1
oGrid.HeaderAppearance = 4
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.FilterBarCaption = "(( ( value 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)`) )))"
oGrid.FilterBarPromptVisible = 2579 /*exFilterBarCompact | exFilterBarShowCloseIfRequired | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/
oGrid.FilterBarPromptType = 2
var_ConditionalFormats = oGrid.ConditionalFormats
	// var_ConditionalFormats.Add("%0 like `*parent*`","parent").BackColor = 0xc0c0c0
	var_ConditionalFormat = var_ConditionalFormats.Add("%0 like `*parent*`","parent")
	with (oGrid)
		TemplateDef = [dim var_ConditionalFormat]
		TemplateDef = var_ConditionalFormat
		Template = [var_ConditionalFormat.BackColor = 12632256]
	endwith
	var_ConditionalFormat1 = var_ConditionalFormats.Add("%0 like `*child*`","child")
		var_ConditionalFormat1.ForeColor = 0x8080ff
		var_ConditionalFormat1.ApplyTo = 0
	var_ConditionalFormat2 = var_ConditionalFormats.Add("%0 like `*B*`","b")
		var_ConditionalFormat2.ForeColor = 0xff0000
		var_ConditionalFormat2.Bold = true
		var_ConditionalFormat2.Italic = true
		var_ConditionalFormat2.ApplyTo = 0
var_Columns = oGrid.Columns
	var_Column = var_Columns.Add("Value")
		var_Column.Width = 128
		var_Column.HTMLCaption = "<b>VA</b><r>sko"
	var_Column1 = var_Columns.Add("APos")
		var_Column1.FormatColumn = "0 apos ``"
		var_Column1.AllowSort = false
		// var_Column1.Def(4) = 15790320
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(4) = 15790320]
		endwith
		// var_Column1.Def(5) = 8421504
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(5) = 8421504]
		endwith
		// var_Column1.Def(8) = var_Column1.Def(5)
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(8) = Def(5)]
		endwith
		var_Column1.Position = 0
	var_Column2 = var_Columns.Add("RPos")
		var_Column2.FormatColumn = "0 rpos ``"
		var_Column2.AllowSort = false
		var_Column2.Position = 1
	var_Column3 = var_Columns.Add("Index")
		var_Column3.FormatColumn = "0 index ``"
		var_Column3.DisplayFilterButton = true
		var_Column3.FilterList = 256
		var_Column3.Position = 2
	var_Column4 = var_Columns.Add("Data 1")
		var_Column4.FormatColumn = "0 index `A-Z`"
		// var_Column4.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column4]
			TemplateDef = var_Column4
			Template = [var_Column4.Def(0) = True]
		endwith
	var_Column5 = var_Columns.Add("Data 2")
		var_Column5.FormatColumn = "0 index `AB` replace `A` with `<off -4>A</off>`"
		// var_Column5.Def(16) = false
		with (oGrid)
			TemplateDef = [dim var_Column5]
			TemplateDef = var_Column5
			Template = [var_Column5.Def(16) = False]
		endwith
		// var_Column5.Def(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Column5]
			TemplateDef = var_Column5
			Template = [var_Column5.Def(17) = 1]
		endwith
		// var_Column5.Def(1) = true
		with (oGrid)
			TemplateDef = [dim var_Column5]
			TemplateDef = var_Column5
			Template = [var_Column5.Def(1) = True]
		endwith
	var_Column6 = var_Columns.Add("Data 3")
		var_Column6.FormatColumn = "0 index `CDC` replace `D` with `<b>D</b>`"
		// var_Column6.Def(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Column6]
			TemplateDef = var_Column6
			Template = [var_Column6.Def(17) = 1]
		endwith
var_Items = oGrid.Items
	h = var_Items.AddItem("ParentA")
	var_Items.InsertItem(h,null,"Child A")
	var_Items.InsertItem(h,null,"Child B")
	// var_Items.CellState(h,4) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,4) = 1]
	endwith
	// var_Items.CellBackColor(var_Items.InsertItem(h,null,"Child C"),5) = 0xff00
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellBackColor(InsertItem(h,,"Child C"),5) = 65280]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	var_Items.AddItem("Item A")
	h = var_Items.AddItem("ParentB")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.CellBackColor(var_Items.InsertItem(h,null,"Child 3"),5) = 0xff00
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellBackColor(InsertItem(h,,"Child 3"),5) = 65280]
	endwith
	// var_Items.CellState(h,5) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,5) = 1]
	endwith
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
	var_Items.AddItem("Item D")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()
sFile = "c:/temp/export.html"
oGrid.Export(sFile,"vis")
var_ShellBrowserWindow = new OleAutoClient("InternetExplorer.Application")
	var_ShellBrowserWindow.Navigate2(sFile)

1075:
Export Data in CSV format

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6,var_Columns,var_ConditionalFormat,var_ConditionalFormat1,var_ConditionalFormat2,var_ConditionalFormats,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
oGrid.BackColorAlternate = 0xf0f0f0
oGrid.DrawGridLines = -1
oGrid.HeaderAppearance = 4
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.FilterBarCaption = "(( ( value 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)`) )))"
oGrid.FilterBarPromptVisible = 2579 /*exFilterBarCompact | exFilterBarShowCloseIfRequired | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/
oGrid.FilterBarPromptType = 2
var_ConditionalFormats = oGrid.ConditionalFormats
	// var_ConditionalFormats.Add("%0 like `*parent*`","parent").BackColor = 0xc0c0c0
	var_ConditionalFormat = var_ConditionalFormats.Add("%0 like `*parent*`","parent")
	with (oGrid)
		TemplateDef = [dim var_ConditionalFormat]
		TemplateDef = var_ConditionalFormat
		Template = [var_ConditionalFormat.BackColor = 12632256]
	endwith
	var_ConditionalFormat1 = var_ConditionalFormats.Add("%0 like `*child*`","child")
		var_ConditionalFormat1.ForeColor = 0x8080ff
		var_ConditionalFormat1.ApplyTo = 0
	var_ConditionalFormat2 = var_ConditionalFormats.Add("%0 like `*B*`","b")
		var_ConditionalFormat2.ForeColor = 0xff0000
		var_ConditionalFormat2.Bold = true
		var_ConditionalFormat2.Italic = true
		var_ConditionalFormat2.ApplyTo = 0
var_Columns = oGrid.Columns
	var_Column = var_Columns.Add("Value")
		var_Column.Width = 128
		var_Column.HTMLCaption = "<b>VA</b><r>sko"
	var_Column1 = var_Columns.Add("APos")
		var_Column1.FormatColumn = "0 apos ``"
		var_Column1.AllowSort = false
		// var_Column1.Def(4) = 15790320
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(4) = 15790320]
		endwith
		// var_Column1.Def(5) = 8421504
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(5) = 8421504]
		endwith
		// var_Column1.Def(8) = var_Column1.Def(5)
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(8) = Def(5)]
		endwith
		var_Column1.Position = 0
	var_Column2 = var_Columns.Add("RPos")
		var_Column2.FormatColumn = "0 rpos ``"
		var_Column2.AllowSort = false
		var_Column2.Position = 1
	var_Column3 = var_Columns.Add("Index")
		var_Column3.FormatColumn = "0 index ``"
		var_Column3.DisplayFilterButton = true
		var_Column3.FilterList = 256
		var_Column3.Position = 2
	var_Column4 = var_Columns.Add("Data 1")
		var_Column4.FormatColumn = "0 index `A-Z`"
		// var_Column4.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column4]
			TemplateDef = var_Column4
			Template = [var_Column4.Def(0) = True]
		endwith
	var_Column5 = var_Columns.Add("Data 2")
		var_Column5.FormatColumn = "0 index `AB` replace `A` with `<off -4>A</off>`"
		// var_Column5.Def(16) = false
		with (oGrid)
			TemplateDef = [dim var_Column5]
			TemplateDef = var_Column5
			Template = [var_Column5.Def(16) = False]
		endwith
		// var_Column5.Def(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Column5]
			TemplateDef = var_Column5
			Template = [var_Column5.Def(17) = 1]
		endwith
		// var_Column5.Def(1) = true
		with (oGrid)
			TemplateDef = [dim var_Column5]
			TemplateDef = var_Column5
			Template = [var_Column5.Def(1) = True]
		endwith
	var_Column6 = var_Columns.Add("Data 3")
		var_Column6.FormatColumn = "0 index `CDC` replace `D` with `<b>D</b>`"
		// var_Column6.Def(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Column6]
			TemplateDef = var_Column6
			Template = [var_Column6.Def(17) = 1]
		endwith
var_Items = oGrid.Items
	h = var_Items.AddItem("ParentA")
	var_Items.InsertItem(h,null,"Child A")
	var_Items.InsertItem(h,null,"Child B")
	// var_Items.CellState(h,4) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,4) = 1]
	endwith
	// var_Items.CellBackColor(var_Items.InsertItem(h,null,"Child C"),5) = 0xff00
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellBackColor(InsertItem(h,,"Child C"),5) = 65280]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	var_Items.AddItem("Item A")
	h = var_Items.AddItem("ParentB")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.CellBackColor(var_Items.InsertItem(h,null,"Child 3"),5) = 0xff00
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellBackColor(InsertItem(h,,"Child 3"),5) = 65280]
	endwith
	// var_Items.CellState(h,5) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,5) = 1]
	endwith
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
	var_Items.AddItem("Item D")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()
? Str(oGrid.Export("","vis")) 

1074:
Is it possible to check multiple-items at once

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local bHasParent,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	bHasParent = oGrid.FormatABC("value != 0",oGrid.Items.ItemParent(Item))
	var_Items = oGrid.Items
		// var_Items.CellHasCheckBox(Item,0) = false
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellHasCheckBox(Item,0) = bHasParent]
		endwith
return

local h,hChild,oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
var_Column = oGrid.Columns.Add("Tasks")
	// var_Column.Def(17) = 1
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(17) = 1]
	endwith
	var_Column.FormatColumn = "value + (%CS0 = 1 ? `<r><fgcolor=808080>(checked)` : ``)"
oGrid.HeaderVisible = true
oGrid.SingleSel = false
var_Items = oGrid.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,null,"Task 1")
	hChild = var_Items.InsertItem(h,null,"Task 2")
	hChild = var_Items.InsertItem(h,null,"Task 3")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	// var_Items.LockedItemCount(0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.LockedItemCount(0) = 1]
	endwith
	// var_Items.CellValue(var_Items.LockedItem(0,0),0) = "<c>Select multiple items and press the <b>SPACE</b> key"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(LockedItem(0,0),0) = "<c>Select multiple items and press the <b>SPACE</b> key"]
	endwith
oGrid.EndUpdate()

1073:
How can I get the icon from the cell when using the Items.CellImages property (icon index)

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	MouseMove = class::nativeObject_MouseMove
endwith
*/
// Occurs when the user moves the mouse.
function nativeObject_MouseMove(Button,Shift,X,Y)
	local i
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.ItemFromPoint(-1,-1,c,hit)
	? Str(oGrid.FormatABC("( 0x44 = ( value bitand 0x44 ) ) ? ( ( (value bitand 0xFFFF0000) bitshift 16 ) array B split `,` )  : `no image`",hit,oGrid.Items.CellImages(i,c))) 
return

local oGrid,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oGrid.Columns.Add("Default")
var_Items = oGrid.Items
	// var_Items.CellImages(var_Items.AddItem("Item 1"),0) = "3,2,1"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImages(AddItem("Item 1"),0) = "3,2,1"]
	endwith
	// var_Items.CellImages(var_Items.AddItem("Item 2"),0) = "2,3"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImages(AddItem("Item 2"),0) = "2,3"]
	endwith
	// var_Items.CellImages(var_Items.AddItem("Item 3"),0) = "2,"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImages(AddItem("Item 3"),0) = "2,"]
	endwith
oGrid.EndUpdate()

1072:
How can I get the icon from the cell when using the Items.CellImages property (icon position within the cell)

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	MouseMove = class::nativeObject_MouseMove
endwith
*/
// Occurs when the user moves the mouse.
function nativeObject_MouseMove(Button,Shift,X,Y)
	local i
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.ItemFromPoint(-1,-1,c,hit)
	? Str(oGrid.FormatABC("( 0x44 = ( value bitand 0x44 ) ) ? 1 + ( (value bitand 0xFFFF0000) bitshift 16 ) : `no image`",hit)) 
return

local oGrid,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oGrid.Columns.Add("Default")
var_Items = oGrid.Items
	// var_Items.CellImages(var_Items.AddItem("Item 1"),0) = "3,2,1"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImages(AddItem("Item 1"),0) = "3,2,1"]
	endwith
	// var_Items.CellImages(var_Items.AddItem("Item 2"),0) = "2,3"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImages(AddItem("Item 2"),0) = "2,3"]
	endwith
	// var_Items.CellImages(var_Items.AddItem("Item 3"),0) = "2"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImages(AddItem("Item 3"),0) = "2"]
	endwith
oGrid.EndUpdate()

1071:
Is it possible to change the visual appearance of the position signs when user changes the column's position by drag and drop

local oGrid,var_Appearance,var_Columns

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderAppearance = 4
var_Columns = oGrid.Columns
	var_Columns.Add("Column 1")
	var_Columns.Add("Column 2")
	var_Columns.Add("Column 3")
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVIUcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4aDhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBeEMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIBICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokGKHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=")
	var_Appearance.Add(2,"CP:1 0 -36 0 0")
oGrid.Template = [Background(182) = 33554432] // oGrid.Background(182) = 0x2000000
oGrid.EndUpdate()

1070:
How can I add a title column

local oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderHeight = 22
oGrid.HeaderAppearance = 4
oGrid.DrawGridLines = -1
var_Columns = oGrid.Columns
	var_Columns.Add("Col 1")
	// var_Columns.Add("Col 2").FormatColumn = "1 pos ``"
	var_Column = var_Columns.Add("Col 2")
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.FormatColumn = "1 pos ``"]
	endwith
	// var_Columns.Add("Col 3").FormatColumn = "1 pos `A-`"
	var_Column1 = var_Columns.Add("Col 3")
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.FormatColumn = "1 pos `A-`"]
	endwith
	// var_Columns.Add("Col 4").FormatColumn = "1 pos `A-Z`"
	var_Column2 = var_Columns.Add("Col 4")
	with (oGrid)
		TemplateDef = [dim var_Column2]
		TemplateDef = var_Column2
		Template = [var_Column2.FormatColumn = "1 pos `A-Z`"]
	endwith
	var_Column3 = var_Columns.Add("Title")
		var_Column3.ExpandColumns = "0,1,2,3"
		var_Column3.DisplayExpandButton = false
		var_Column3.AllowSort = false
		var_Column3.AllowDragging = false
		var_Column3.Position = 0
		var_Column3.HeaderAlignment = 1
oGrid.ColumnAutoResize = false
var_Items = oGrid.Items
	var_Items.AddItem("Item 1")
	var_Items.AddItem("Item 2")
	var_Items.AddItem("Item 3")
	var_Items.AddItem("Item 4")
oGrid.EndUpdate()
? Str(oGrid.Export("")) 

1069:
FilterBarCaption ALLUI Keyword ( sample 3, result, leaf )

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddGroupItem = class::nativeObject_AddGroupItem
endwith
*/
// Occurs after a new Group Item has been inserted to Items collection.
function nativeObject_AddGroupItem(Item)
	local val,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	var_Items = oGrid.Items
		// var_Items.ItemBackColor(Item) = 0xf0f0f0
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.ItemBackColor(Item) = 15790320]
		endwith
		val = var_Items.CellValue(Item,var_Items.GroupItem(Item))
		// var_Items.CellState(Item,var_Items.GroupItem(Item)) = oGrid.FormatABC("A = `Checked` ? 1 : 0",val)
		with (oGrid)
			TemplateDef = [dim var_Items,Item]
			TemplateDef = var_Items
			TemplateDef = Item
			Template = [var_Items.CellState(Item,GroupItem(Item)) = Me.FormatABC("A = `Checked` ? 1 : 0",val)]
		endwith
return

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local i,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.FormatABC("value + 1",oGrid.Items.ItemToIndex(Item))
	// oGrid.Items.CellImage(Item,3) = i
	var_Items = oGrid.Items
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImage(Item,3) = i]
	endwith
return

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.Columns.Add("Check")
	// var_Column2.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column2]
		TemplateDef = var_Column2
		Template = [var_Column2.Def(0) = True]
	endwith
	var_Column2.DisplayFilterButton = true
	var_Column2.DisplayFilterPattern = false
	var_Column2.FilterType = 6
var_Column3 = oGrid.Columns.Add("Image")
	var_Column3.DisplayFilterButton = true
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 /*exShowExclude | exShowFocusItem | exShowCheckBox*/
var_Column4 = oGrid.Columns.Add("Pos")
	var_Column4.AllowSizing = false
	var_Column4.AllowSort = false
	var_Column4.Width = 32
	var_Column4.FormatColumn = "1 rpos ``"
	var_Column4.Position = 0
var_Items = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	h = var_Items.AddItem("Item B")
	// var_Items.CellValue(h,1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,1) = "Sub-Item B"]
	endwith
	// var_Items.CellState(h,2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,2) = 1]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.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>` + leafitemcount + ` result(s)` ) : (`<r><fgcolor=808080>`+ leafitemcount + ` item(s)`) )))"
oGrid.FilterBarPromptVisible = 3 /*exFilterBarVisible | exFilterBarPromptVisible*/
oGrid.AllowGroupBy = true
oGrid.SortBarVisible = true
var_Column5 = oGrid.Columns.Item(2)
	var_Column5.FormatColumn = "%CS2 ? `Checked` : `Unchecked`"
	var_Column5.SortOrder = 1
oGrid.EndUpdate()

1068:
A black portion is shown while I am using the BackColorAlternate with EBN colors. What can I do

local oGrid,var_Column,var_Column1,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = true
oGrid.DefaultItemHeight = 20
oGrid.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAAEhIDhAxHAxg0HG0Mg4xGI3HMOig3GcJiYAf8jAEhhUnAAyhEqg8hk0oAsIjgAiAwmYxGA4mYzGwwkI0i0ooUnB0IBMIl1Dg8zmYyGolptPkI1mY1GAll9KoUslNIrVCqNQldShFUstXAVfrVcrlZtVhuFnsUHq1zoczoQGhFBkNpg6zbDykUkhsPHE2h85nc9n8xtVDtlex9Msd2p1YstVq9ux8HyMtzuFz1PsNTzQlv2hhWfkuqpeVuN0q+nvEooN5veSAGpkb/ACcZrvhU3w83nM/poxGuchGpoVBvWgg+8knA4WimnFxI45Er5XOlHMg/Q3XU33W4ew9Wyu11mchDagcO7zus8VDoNBBEIKBpMY6DqOQyokhA/IQIQmwMk4bIQFDcoO6LWgwhQkNcABwEyAB5GwWbet6cRQg3DENQ5D8QxADZvEkAB8nabsURGeBpFM3pwE2AEZRpDx/neZpOR3Dz9oO/r/wCMoZNTBQAQRJSEwYg8HPGhEIoNCaEwq10gQ2WcRt7LcRxRFpuxUAEURQ3sczBEMgTTG8gN7HpOSEAEiQBAQZpmQ0DibPUFwbKcHwkhQoQtNQNzNEMbABOKDy/DMYQzHLeoPL0OTJSUd0pHcxTewk5zrIygIRPslz4lEngBKIAQivgASs/kLSBTlO00f8t0vGcgUbDlDRjXLCUNRERRvRgAHW2oAICA==")
var_Column = oGrid.Columns.Add("Default")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_Column1 = oGrid.Columns.Add("Position")
	var_Column1.FormatColumn = "1 rindex ``"
	var_Column1.Visible = false
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%C1 mod 2")
	var_ConditionalFormat.BackColor = 0x1000000
var_Items = oGrid.Items
	var_Items.AddItem("Item 1")
	var_Items.AddItem("Item 2")
	var_Items.AddItem("Item 3")
	var_Items.AddItem("Item 4")
oGrid.EndUpdate()

1067:
How can I specify alternate background colors for each root item, similar with BackColorAlternate

local h,oGrid,var_Column,var_Column1,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
var_Column = oGrid.Columns.Add("Default")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_Column1 = oGrid.Columns.Add("Position")
	var_Column1.FormatColumn = "( ( 1:=( ( 0:=(1 rpos '') ) lfind `.`) ) < 0 ? =:0 : (=:0 left =:1) )"
	var_Column1.Visible = false
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%C1 mod 2")
	var_ConditionalFormat.BackColor = 0xf0f0f0
var_Items = oGrid.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	h = var_Items.AddItem("Root 3")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
oGrid.EndUpdate()

1066:
Is it possible to change the caption from a column without to remove the column and add it with the new caption
local oGrid,var_Column,var_Column1

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
// oGrid.Columns.Add("ColumnName").Caption = "NewName"
var_Column = oGrid.Columns.Add("ColumnName")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.Caption = "NewName"]
endwith
// oGrid.Columns.Add("ColumnName").HTMLCaption = "<b>New</b>Name"
var_Column1 = oGrid.Columns.Add("ColumnName")
with (oGrid)
	TemplateDef = [dim var_Column1]
	TemplateDef = var_Column1
	Template = [var_Column1.HTMLCaption = "<b>New</b>Name"]
endwith

1065:
FilterBarCaption ALL Keyword ( sample 2, result )

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local i,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.FormatABC("value + 1",oGrid.Items.ItemToIndex(Item))
	// oGrid.Items.CellImage(Item,3) = i
	var_Items = oGrid.Items
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImage(Item,3) = i]
	endwith
return

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.Columns.Add("Check")
	var_Editor = var_Column2.Editor
		var_Editor.EditType = 19
		// var_Editor.Option(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Editor]
			TemplateDef = var_Editor
			Template = [var_Editor.Option(17) = 1]
		endwith
	var_Column2.DisplayFilterButton = true
	var_Column2.DisplayFilterPattern = false
	var_Column2.FilterType = 6
var_Column3 = oGrid.Columns.Add("Image")
	var_Column3.DisplayFilterButton = true
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 /*exShowExclude | exShowFocusItem | exShowCheckBox*/
var_Column4 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	h = var_Items.AddItem("Item B")
	// var_Items.CellValue(h,1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,1) = "Sub-Item B"]
	endwith
	// var_Items.CellState(h,2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,2) = 1]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.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)`) )))"
oGrid.FilterBarPromptVisible = 3 /*exFilterBarVisible | exFilterBarPromptVisible*/
var_Column5 = oGrid.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGrid.Columns.Item(2).Filter = Str(1)
oGrid.ApplyFilter()
oGrid.EndUpdate()

1064:
FilterBarCaption ALL Keyword ( sample 1 )

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local i,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.FormatABC("value + 1",oGrid.Items.ItemToIndex(Item))
	// oGrid.Items.CellImage(Item,3) = i
	var_Items = oGrid.Items
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImage(Item,3) = i]
	endwith
return

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.Columns.Add("Check")
	var_Editor = var_Column2.Editor
		var_Editor.EditType = 19
		// var_Editor.Option(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Editor]
			TemplateDef = var_Editor
			Template = [var_Editor.Option(17) = 1]
		endwith
	var_Column2.DisplayFilterButton = true
	var_Column2.DisplayFilterPattern = false
	var_Column2.FilterType = 6
var_Column3 = oGrid.Columns.Add("Image")
	var_Column3.DisplayFilterButton = true
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 /*exShowExclude | exShowFocusItem | exShowCheckBox*/
var_Column4 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	h = var_Items.AddItem("Item B")
	// var_Items.CellValue(h,1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,1) = "Sub-Item B"]
	endwith
	// var_Items.CellState(h,2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,2) = 1]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.FilterBarCaption = "all"
oGrid.FilterBarPromptVisible = 3 /*exFilterBarVisible | exFilterBarPromptVisible*/
var_Column5 = oGrid.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGrid.Columns.Item(2).Filter = Str(1)
oGrid.ApplyFilter()
oGrid.EndUpdate()

1063:
FilterBarCaption ALLUI Keyword ( sample 2, result )

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local i,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.FormatABC("value + 1",oGrid.Items.ItemToIndex(Item))
	// oGrid.Items.CellImage(Item,3) = i
	var_Items = oGrid.Items
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImage(Item,3) = i]
	endwith
return

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.Columns.Add("Check")
	var_Editor = var_Column2.Editor
		var_Editor.EditType = 19
		// var_Editor.Option(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Editor]
			TemplateDef = var_Editor
			Template = [var_Editor.Option(17) = 1]
		endwith
	var_Column2.DisplayFilterButton = true
	var_Column2.DisplayFilterPattern = false
	var_Column2.FilterType = 6
var_Column3 = oGrid.Columns.Add("Image")
	var_Column3.DisplayFilterButton = true
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 /*exShowExclude | exShowFocusItem | exShowCheckBox*/
var_Column4 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	h = var_Items.AddItem("Item B")
	// var_Items.CellValue(h,1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,1) = "Sub-Item B"]
	endwith
	// var_Items.CellState(h,2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,2) = 1]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.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)`) )))"
oGrid.FilterBarPromptVisible = 3 /*exFilterBarVisible | exFilterBarPromptVisible*/
var_Column5 = oGrid.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGrid.Columns.Item(2).Filter = Str(1)
oGrid.ApplyFilter()
oGrid.EndUpdate()

1062:
FilterBarCaption ALLUI Keyword ( sample 1 )

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local i,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.FormatABC("value + 1",oGrid.Items.ItemToIndex(Item))
	// oGrid.Items.CellImage(Item,3) = i
	var_Items = oGrid.Items
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImage(Item,3) = i]
	endwith
return

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.Columns.Add("Check")
	var_Editor = var_Column2.Editor
		var_Editor.EditType = 19
		// var_Editor.Option(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Editor]
			TemplateDef = var_Editor
			Template = [var_Editor.Option(17) = 1]
		endwith
	var_Column2.DisplayFilterButton = true
	var_Column2.DisplayFilterPattern = false
	var_Column2.FilterType = 6
var_Column3 = oGrid.Columns.Add("Image")
	var_Column3.DisplayFilterButton = true
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 /*exShowExclude | exShowFocusItem | exShowCheckBox*/
var_Column4 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	h = var_Items.AddItem("Item B")
	// var_Items.CellValue(h,1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,1) = "Sub-Item B"]
	endwith
	// var_Items.CellState(h,2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,2) = 1]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.FilterBarCaption = "allui"
oGrid.FilterBarPromptVisible = 3 /*exFilterBarVisible | exFilterBarPromptVisible*/
var_Column5 = oGrid.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGrid.Columns.Item(2).Filter = Str(1)
oGrid.ApplyFilter()
oGrid.EndUpdate()

1061:
FilterBarCaption AVAILABLE Keyword ( sample 2, result )

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local i,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.FormatABC("value + 1",oGrid.Items.ItemToIndex(Item))
	// oGrid.Items.CellImage(Item,3) = i
	var_Items = oGrid.Items
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImage(Item,3) = i]
	endwith
return

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.Columns.Add("Check")
	var_Editor = var_Column2.Editor
		var_Editor.EditType = 19
		// var_Editor.Option(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Editor]
			TemplateDef = var_Editor
			Template = [var_Editor.Option(17) = 1]
		endwith
	var_Column2.DisplayFilterButton = true
	var_Column2.DisplayFilterPattern = false
	var_Column2.FilterType = 6
var_Column3 = oGrid.Columns.Add("Image")
	var_Column3.DisplayFilterButton = true
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 /*exShowExclude | exShowFocusItem | exShowCheckBox*/
var_Column4 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	h = var_Items.AddItem("Item B")
	// var_Items.CellValue(h,1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,1) = "Sub-Item B"]
	endwith
	// var_Items.CellState(h,2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,2) = 1]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.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)`) )))"
oGrid.FilterBarPromptVisible = 3 /*exFilterBarVisible | exFilterBarPromptVisible*/
var_Column5 = oGrid.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGrid.Columns.Item(2).Filter = Str(1)
oGrid.ApplyFilter()
oGrid.EndUpdate()

1060:
FilterBarCaption AVAILABLE Keyword ( sample 1 )

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AddItem = class::nativeObject_AddItem
endwith
*/
// Occurs after a new Item has been inserted to Items collection.
function nativeObject_AddItem(Item)
	local i,var_Items
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	i = oGrid.FormatABC("value + 1",oGrid.Items.ItemToIndex(Item))
	// oGrid.Items.CellImage(Item,3) = i
	var_Items = oGrid.Items
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellImage(Item,3) = i]
	endwith
return

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.Columns.Add("Check")
	var_Editor = var_Column2.Editor
		var_Editor.EditType = 19
		// var_Editor.Option(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Editor]
			TemplateDef = var_Editor
			Template = [var_Editor.Option(17) = 1]
		endwith
	var_Column2.DisplayFilterButton = true
	var_Column2.DisplayFilterPattern = false
	var_Column2.FilterType = 6
var_Column3 = oGrid.Columns.Add("Image")
	var_Column3.DisplayFilterButton = true
	var_Column3.FilterType = 10
	var_Column3.FilterList = 9472 /*exShowExclude | exShowFocusItem | exShowCheckBox*/
var_Column4 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	h = var_Items.AddItem("Item B")
	// var_Items.CellValue(h,1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,1) = "Sub-Item B"]
	endwith
	// var_Items.CellState(h,2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellState(h,2) = 1]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080> ` + value + ` </fgcolor>`",oGrid.Description(11)))
oGrid.FilterBarCaption = "value + ` ` + available"
oGrid.FilterBarPromptVisible = 3 /*exFilterBarVisible | exFilterBarPromptVisible*/
var_Column5 = oGrid.Columns.Item(0)
	var_Column5.FilterType = 240
	var_Column5.Filter = "Item A|Item B"
oGrid.Columns.Item(2).Filter = Str(1)
oGrid.ApplyFilter()
oGrid.EndUpdate()

1059:
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 oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item B"),1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item B"),1) = "Sub-Item B"]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oGrid.Description(11)))
oGrid.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>`"
oGrid.FilterBarPromptVisible = 256
var_Column3 = oGrid.Columns.Item(0)
	var_Column3.FilterType = 240
	var_Column3.Filter = "Item A|Item B"
var_Column4 = oGrid.Columns.Item(1)
	var_Column4.FilterType = 3
	var_Column4.Filter = "*B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item B"),1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item B"),1) = "Sub-Item B"]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.FilterBarFont = oGrid.Font
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oGrid.Description(11)))
oGrid.FilterBarCaption = "value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`"
oGrid.FilterBarPromptVisible = 256
var_Column3 = oGrid.Columns.Item(0)
	var_Column3.FilterType = 240
	var_Column3.Filter = "Item A|Item B"
var_Column4 = oGrid.Columns.Item(1)
	var_Column4.FilterType = 3
	var_Column4.Filter = "*B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("Col-1")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.Columns.Add("Col-2")
	var_Column1.DisplayFilterButton = true
	var_Column1.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column2 = oGrid.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 = oGrid.Items
	// var_Items.CellValue(var_Items.AddItem("Item A"),1) = "Sub-Item A"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item A"),1) = "Sub-Item A"]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item B"),1) = "Sub-Item B"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item B"),1) = "Sub-Item B"]
	endwith
	// var_Items.CellValue(var_Items.AddItem("Item C"),1) = "Sub-Item C"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem("Item C"),1) = "Sub-Item C"]
	endwith
oGrid.Template = [Description(11) = FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",Description(11))] // oGrid.Description(11) = Str(oGrid.FormatABC("`<fgcolor=808080>` + value + `</fgcolor>`",oGrid.Description(11)))
oGrid.FilterBarCaption = "value replace `[` with `<fgcolor=808080>[` replace `]` with `]</fgcolor>`"
oGrid.FilterBarPromptVisible = 256
var_Column3 = oGrid.Columns.Item(0)
	var_Column3.FilterType = 240
	var_Column3.Filter = "Item A|Item B"
var_Column4 = oGrid.Columns.Item(1)
	var_Column4.FilterType = 3
	var_Column4.Filter = "*B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("Item")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarCaption = "`<r>` + value"
oGrid.FilterBarPromptVisible = 1280 /*exFilterBarShowCloseOnRight | exFilterBarToggle*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("Item")
	var_Column.DisplayFilterButton = true
	var_Column.FilterList = 9504 /*exShowExclude | exShowFocusItem | exShowCheckBox | exSortItemsAsc*/
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarFont = oGrid.Font
oGrid.FilterBarPrompt = Str(oGrid.FormatABC("`<b>` + value",oGrid.FilterBarPrompt))
oGrid.FilterBarCaption = "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : (`<fgcolor=808080>`+ itemcount + ` item(s)`) )"
oGrid.FilterBarPromptVisible = 3591 /*exFilterBarCompact | exFilterBarShowCloseOnRight | exFilterBarShowCloseIfRequired | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarFont = oGrid.Font
oGrid.FilterBarCaption = "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(value) ? `<br>` : `` ) + `<r>` + abs(matchitemcount + 1) + ` result(s)` ) : ``)"
oGrid.FilterBarPromptVisible = 2055 /*exFilterBarCompact | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarFont = oGrid.Font
oGrid.FilterBarCaption = "`<b><r>` + value + `</b><fgcolor=808080>` + ( matchitemcount < 0 ? `<off -4> ` + abs(matchitemcount + 1) + ` result(s)` : ``)"
oGrid.FilterBarPromptVisible = 2071 /*exFilterBarCompact | exFilterBarSingleLine | exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarFont = oGrid.Font
oGrid.FilterBarCaption = "`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)"
oGrid.FilterBarPromptVisible = 7 /*exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

1051:
FilterBarCaption Predefined Keywords

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	AfterExpandItem = class::nativeObject_AfterExpandItem
endwith
*/
// Fired after an item is expanded (collapsed).
function nativeObject_AfterExpandItem(Item)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local h,oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.Columns.Add("Check")
	var_Editor = var_Column1.Editor
		var_Editor.EditType = 19
		// var_Editor.Option(17) = 1
		with (oGrid)
			TemplateDef = [dim var_Editor]
			TemplateDef = var_Editor
			Template = [var_Editor.Option(17) = 1]
		endwith
	var_Column1.DisplayFilterButton = true
	var_Column1.DisplayFilterPattern = false
	var_Column1.FilterType = 6
var_Column2 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	h = var_Items.AddItem("Item B")
	// var_Items.CellState(var_Items.InsertItem(h,null,"Sub-Item B1"),1) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(InsertItem(h,,"Sub-Item B1"),1) = 1]
	endwith
	var_Items.InsertItem(h,null,"Sub-Item B2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	var_Items.AddItem("Item C")
oGrid.FilterInclude = 1
oGrid.FilterBarFont = oGrid.Font
oGrid.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>`+ `<br><fgcolor=0000FF><i>leafitemcount</i></fgcolor>: <fgcolor=808080>` + leafitemcount +" ;
 +" `</fgcolor>`"
oGrid.FilterBarPromptPattern = "B"
oGrid.FilterBarPromptVisible = 7 /*exFilterBarCaptionVisible | exFilterBarVisible | exFilterBarPromptVisible*/
var_Column3 = oGrid.Columns.Item(0)
	var_Column3.FilterType = 240
	var_Column3.Filter = "Item A|Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

1050:
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 oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarFont = oGrid.Font
oGrid.FilterBarCaption = "`<r><i><fgcolor=808080><upline><solidline><sha ;;0>` + value"
oGrid.FilterBarPromptPattern = "B"
oGrid.FilterBarPromptVisible = 2067 /*exFilterBarCompact | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 1281 /*exFilterBarShowCloseOnRight | exFilterBarToggle | exFilterBarPromptVisible*/
oGrid.FilterBarPrompt = Str(oGrid.FormatABC("`<r>` + value",oGrid.FilterBarPrompt))
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.RightToLeft = true
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 257 /*exFilterBarToggle | exFilterBarPromptVisible*/
oGrid.EndUpdate()

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

local oGrid,var_Appearance,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABHQDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLOg7IJjyI4/SJAYCydKAWhxIaZKJHCZoEDaTAADCNVAQp6MEIJVbVEI0e79OgBLp/Z7kECIJJAaRjHQdJxGLA8EhtCQhCZteK6SgMKJYXhWQYRXI1JwvMBrWrdQjiOYELQtMKmSZNLYGG4dR5SVJbcYhSYsRRFMoyDIOXYDLKsdYqSpXIThObEGgaPqJYjsUjCMKnR7HVIURrBPC9TBPE69ZgmC6ucKPX51ShKFaBWDZcwFAS+UBuYCAILiEAQGZ1XT8OROicbgJgSTJRlCaZeDsHY7QGR4xkSYp3CaExZAQMgalQYAwjCAAfBANxcA2TgKAUOpDCGFhKg0RpXCwCwDHQHQHEyAIkCkOhbFOGA8A8DohBgRg9AccZcn8EpEjMLI2C2DYxAgQgvAIUIVkoAAPBQDJlECTZ3CCYwDACQwUA8A5MCAWAWDiQi4l8aQOEgLJuBgBgDmYFAzEoIoIl0WALgKYJbBABADAAHgHg8VAMmqCQQDMXABAATYwTmNwBDATJXAiAgjHmNQ5lgQ5QEQEQMmcWg/GwD5ylyNw2gMcJcjsBgBgOQQDDhRpVAMMwnDBFw1B0Ax8D0DxOmmJJIGQTY5hGMAwkwM4CAYLZAmAOJnAqAojiIGg6iieYkmeAYOHaK" ;
 +"JDCyCwjH6AoggsQpQliAJLhgaJ0CESBTnyDwjk+cg4g4P5IHIHJ+BWRRzlYWAxiOUxihsY4KjKLJRGqC44FCegkkkM58iAKAPnIWIWD8SRSFSfQnkmewUhYP4GiGKJ7G0TIbCSUoggqUo0lAQ4LnEcBcD8Coiiif4nE+eAAn2HpOkcFJqi4T5SkyMw/kqQown8IBIBOdA+A+DJrBqVxXEqYo4lCApLhGHBnD8S4ymyfxmg+cwQkQP5egOUZIWoEAkjIeIPBMBJBD+TBjBifwvkuc58hQJQPmFrYykkchclSApKjGOBuD+TRDFCfw3mmIxNi8FxFlOXhVC4aYDFyPgvg2YBcBcLZGCGCJ0DSLRzGSWQ/lmY5+mEP5gmMDBZRSMRsFsOxMhMJJ/DsTpTnwaQaE+N5ojuNhdEYNI5C4TZJO1GRDmCaxnA2Yx4n8IpIjOTBQBQC5TgyYw7gUYRYikC0BYRwsDQBoB8eA6Q2hsE0BUXgywZtYCyHMKwnxSAhAQHkIQhRrBaDsCwA4ERiB2EWAIYIXhhiVEgAEUYwwYjyASLge4FhHgRDkM8OQih0jWPkGgBBAQ")
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 257 /*exFilterBarToggle | exFilterBarPromptVisible*/
oGrid.Template = [Background(1) = 16777216] // oGrid.Background(1) = 0x1000000
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 1
oGrid.Template = [Background(1) = 255] // oGrid.Background(1) = 0xff
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 1
oGrid.Template = [Background(1) = -1] // oGrid.Background(1) = -1
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 513 /*exFilterBarShowCloseIfRequired | exFilterBarPromptVisible*/
oGrid.EndUpdate()

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

local h,oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
	// var_Items.LockedItemCount(2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.LockedItemCount(2) = 1]
	endwith
	h = var_Items.LockedItem(2,0)
	// var_Items.ItemDivider(h) = 0
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ItemDivider(h) = 0]
	endwith
	// var_Items.CellValue(h,0) = "<c><fgcolor=808080>Press the CTRL + F to turn on/off the control's filter bar. ALT + Up/Down moves the focus."
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValue(h,0) = "<c><fgcolor=808080>Press the CTRL + F to turn on/off the control's filter bar. ALT + Up/Down moves the focus."]
	endwith
	// var_Items.CellValueFormat(h,0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.CellValueFormat(h,0) = 1]
	endwith
oGrid.FilterBarCaption = "`<r><fgcolor=808080>` + value"
oGrid.FilterBarPromptPattern = "B"
oGrid.FilterBarPromptVisible = 2323 /*exFilterBarCompact | exFilterBarToggle | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarCaption = "len(value) ? `filter for: <fgcolor 808080>` + value  : `<fgcolor 808080>no filter`"
oGrid.FilterBarPromptVisible = 18 /*exFilterBarSingleLine | exFilterBarVisible*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarCaption = "`<r>` + value"
oGrid.FilterBarPromptVisible = 2067 /*exFilterBarCompact | exFilterBarSingleLine | exFilterBarVisible | exFilterBarPromptVisible*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item A|Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Click = class::nativeObject_Click
endwith
*/
// Occurs when the user presses and then releases the left mouse button over the grid control.
function nativeObject_Click()
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.ClearFilter()
return

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	FilterChange = class::nativeObject_FilterChange
endwith
*/
// Occurs when filter was changed.
function nativeObject_FilterChange()
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	? "Items.MatchItemCount" 
	? Str(oGrid.Items.MatchItemCount) 
	? Str(oGrid.FormatABC("value < 0 ? `filter applied: ` + abs(value + 1) + ` result(s)` : `no filter`",oGrid.Items.MatchItemCount)) 
return

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 1
oGrid.FilterBarPromptPattern = "Item"
oGrid.EndUpdate()

1039:
How can I programmatically clear the control's filter
/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	Click = class::nativeObject_Click
endwith
*/
// Occurs when the user presses and then releases the left mouse button over the grid control.
function nativeObject_Click()
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.ClearFilter()
return

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 1
oGrid.FilterBarPromptPattern = "B"
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptPattern = "B"
oGrid.FilterBarPromptVisible = 3 /*exFilterBarVisible | exFilterBarPromptVisible*/
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarPromptVisible = 1
oGrid.FilterBarPromptPattern = "B"
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
// oGrid.Columns.Add("Item").DisplayFilterButton = true
var_Column = oGrid.Columns.Add("Item")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.DisplayFilterButton = True]
endwith
var_Column1 = oGrid.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 = oGrid.Items
	var_Items.AddItem("Item A")
	var_Items.AddItem("Item B")
	var_Items.AddItem("Item C")
oGrid.FilterBarCaption = "len(value) = 0 ? `<fgcolor=808080>no filter` : value"
oGrid.FilterBarPromptVisible = 2
var_Column2 = oGrid.Columns.Item(0)
	var_Column2.FilterType = 240
	var_Column2.Filter = "Item B"
oGrid.ApplyFilter()
oGrid.EndUpdate()

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

local h,oGrid,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
oGrid.VisualDesign = "gBFLBWIgBAEHhEJAEGg6VAkHeLpgwChAOhULB8XAUUg8MAAREEHGMcgRCJ0ei8dhABDEcQAAYAQGKIYBkAKBQAGaAoDDMOQwQwAAxjGKEEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBRWAkEwiBiEQTjea5CgOIAFS7LIqjRQEBxhIaZYIGaiQADENo9TxIMZAfBIHShK6NJABCCSQKkYx0HScRijDIEFwGIQmbKiej4DCiCQQW7OYYRVCNMQSfa8HivJyrcamfp/YBgOBYHb1eLVPR5LwfPCGUw1P6PLxkORZHimK4tSLHV7xVpMIwZFafIQhCCoHomS5NU7UNR0TQUFx9FaGX7rDDsGwLAJ6XRgF4bg2VpnHePpenAN4bH2GwHFmApSjEGBLnWOpRGOTBZHOegrE6BxPiWVJqCweQrn0LgJAWJBjwgaw1gKO5HmWch5h+fovF+G5bmich4BgfZkB8dynRUVYqiUR5rnmex/F6N4tn2AJfnebZ3DEXw3HWXgzAyIwgicKJKBKEIhCeCgiHyHYFEmSAFmqBghFIdgSCeIJygYDAyAgJx6AoIINAMOJNCgCZCGoGoLmMCI+CwJoihMNglCCIhzFCUg0EmMhghWDBkAiQg9CUY4jEYN4Jk2IxklYJoJHIUg+CSZJSESFwkkkGI+FOFIJEIRhPhMCRJCSVoRrSBhiDgTZjHYT4PEkYhwhgJYm0SaIaiaSYuE+GQNlmCIBGCJxjhiZQ5AkM" ;
 +"hAg6ExJCkPhPguaAiFYUAlAkKZ0g6HoOEmWR/GHcA4m0OwIlIJIHCRgQshGJhpjoaocieaZiC6GAimkUgehIOwnGYGYIGkah6jaE4rg6SpCjKK5rEOMYlGIGIihKOggloFoqj6L5aGaBo6CkGIkAQjiPpCAAaJILCTJQlKPACDaXJgmSaJsnCdJ4nygKEoijKQpSmKcqCpKoqysK0rivLAsSyLMtC1LYty4Lkui7LwvS+L8wDBMIwzEMUxjHMgyTKMszDNM4zzQNE0jTNQ1TWNc2DZNo2zcN03jfOA4TiOM5DlOY5zoOk6jrOw7TuO88DxPI8z0PU9j3Pg+T6Ps/D9P4/0AQFAkDQRBUGQdCEJQpC0MQ1DkPRBEUSRNFEVBhFkXRhGQ9D6Dxfh+W5gGGd4QH2XQjCmDpFFaKoVB+D5Xmed5+H8YAHnIAh9EwV5Fl0d4MkMKJICmSgygSJAoEmMUCIPgnDCCIOQFYCxJjwFoCcA4kxoF+AIJkAgExegDEgEYQInAzCUAIOEGgfxiiRDYF1Q4EQ2BSCaEQYwbAiKREMpRSymFNDIAkAxT6oVRgSA2qdVKq1WqvVirMZQUhSCnBUMoIgoQRgnGSIQUgkg1hIHYAkAYMROAmHiLsE4xxSCxBwEwCQ0wmDdBsE0GYXBtg2CSPMFIuwYiQBYBQeAcwOCnBCCZgw0g0glBONAQgqQThCGgPQGoBQfiRGmOEZIPAXjsBoPAO4HRThhA0EQSA5BAgaCKJIGg3QdhOCmNU" &
 +"BoQAijTCIF0FwQxpCHDIPAYYMQGgtCmFcaQtRAjZCyFYSojQ2B2BoKwIYFApBXEIBsIQ1QsAWAWEwaA1xCgjAoIAQBAQ="
oGrid.Columns.Add("Column")
var_Items = oGrid.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,null,"Child")
oGrid.EndUpdate()

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

local h,oGrid,var_Appearance,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(3,"gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgXIcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRgwZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOM" ;
 +"INCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=")
	var_Appearance.Add(1,"CP:3 -2 -2 2 2")
	var_Appearance.Add(4,"gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEeBkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOFSFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQO" ;
 +"JtDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=")
	var_Appearance.Add(2,"CP:4 -2 -2 2 2")
oGrid.LinesAtRoot = 1
oGrid.HasButtons = 4
oGrid.Template = [HasButtonsCustom(0) = 16777216] // oGrid.HasButtonsCustom(false) = 16777216
oGrid.Template = [HasButtonsCustom(1) = 33554432] // oGrid.HasButtonsCustom(true) = 33554432
oGrid.Columns.Add("Column")
var_Items = oGrid.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,null,"Child")
oGrid.EndUpdate()

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

local h,oGrid,var_Appearance,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(1,"XP:TREEVIEW 2 1")
	var_Appearance.Add(2,"XP:TREEVIEW 2 2")
oGrid.Template = [Background(180) = 16777216] // oGrid.Background(180) = 0x1000000
oGrid.Template = [Background(181) = 33554432] // oGrid.Background(181) = 0x2000000
oGrid.LinesAtRoot = -1
oGrid.Columns.Add("Column")
var_Items = oGrid.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,null,"Child")
oGrid.EndUpdate()

1032:
How can I find if the control is running in DPI mode
local oGrid

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
? Str(oGrid.FormatABC("dpi = 1 ? `normal/stretch mode` : `dpi mode`")) 

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

local h,oGrid,var_Appearance,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABDwCg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJegef4zluaJ3nqPJeCYH4BAeX5TDLBpVGqKRRnwf4flefZtHsX54BYAR/F+EwVnUd5eAMMJKDIChygyIQpAoEh4iIJ5JlgXIcgCXpIGoFwnGEQh6BEKBgmMIICHgIJCAiUAzgyUoAhwJohkiRgygwYpiGoKwzGIcgKCkNQNCMRIbCYCRYk4QoMiOchWDwNBjhiJJaDYTRiGiFwlCQAhOE8JBJHITIRgwZRZFCFCZBkOIUhKTRpCWAwgGYQ4El4NxlBifIWCcCYCFoaoMGaKYyG6GxlBmGJdhkCAWBIeA5g4U4QhMJAImkPIShRVxGgQJRlCIUISh+SJpnCZIeBgFgiHgO4OlOM" ;
 +"INCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYgYiaHopiuaRakCbIsisSpGjYOwaHYKYMCkK5CA2IxrCwCwFigaJrkLTI6lcdANAEgIA=")
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAEhABEICg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLJQKQSBcQR9EaBZBAWTpQC0OJDTJRI4TNAgbSYAAYRqoCb6loTKypaxjCQQIgkUBpGKdBynEYsDwSGyJCCJWyIbpKAwoVbcs4AYhuJpaQi+d5PFbjVT8dLAMBwLA8EwXAJ+OpfDxXU7eFKpR5fchXTI8UxXFqXZhkeQrfh7KYVRBKdBQRBEFQPJqnahqOpaXo2RoLUJKcQwHTmHYNQTALyuTALZrWeZ3XrgN74LbtZzVQauYRpbCMEr6bpoWLnFi6Ho1U4llWah1jqSweFqfxPgQQRphi+Yak0YIuqUfJeg8X4rluaZ3niGB+AQHx/EyShjjEVYqiUR5rnmex/GAB5+AIf4gEeXJFHyXZ3gCTAygyAociMKBKEKBIeCiCZyHYFAnCEeBkh+BghFgRIegOCgYCySAgh4CAkgINAMmMNIgCcCYjn4LoLmMCJGDKC5ijIagoDMYhCAoJg1A0IxEhsJgJFiThChCY5yFYPA0GOGIYloNhNGIaIXCUJACE4TwkEkchOFSFYlFkXhUCUCQZEYTglCSMxaEkYJIBmFJhDeDZZEYPwlgmQhghaGqVDoa4bGaeY6FGGZNlmFIBGEJ4jhiZQ5AkMhAg6E5JCkRoGCUSQ6B6CYiSCBIOh+DhJmmARiWQO" ;
 +"JtDsCJSCSBwkXSLIRicaZ6HqIIomoIguhwIpphIHoWDsJ4mCGChpmqOpGheLIOkqUo2iya4DjGJxihiQoSj4IJaDaMpCjCWoGg6PgpBiQ4tHcQJQBAgI=")
oGrid.LinesAtRoot = -1
oGrid.Template = [Background(180) = 16777216] // oGrid.Background(180) = 0x1000000
oGrid.Template = [Background(181) = 33554432] // oGrid.Background(181) = 0x2000000
oGrid.Columns.Add("Column")
var_Items = oGrid.Items
	h = var_Items.AddItem("Root 1")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
	h = var_Items.AddItem("Root 2")
	var_Items.InsertItem(h,null,"Child")
oGrid.EndUpdate()

1030:
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
/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	SelectionChanged = class::nativeObject_SelectionChanged
endwith
*/
// Fired after a new item has been selected.
function nativeObject_SelectionChanged()
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	? "SelectionChanged" 
return

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.FreezeEvents(true)
oGrid.SingleSel = true
oGrid.SelectOnRelease = true
// oGrid.Columns.Add("Column").FormatColumn = "1 apos `A-Z`"
var_Column = oGrid.Columns.Add("Column")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.FormatColumn = "1 apos `A-Z`"]
endwith
var_Items = oGrid.Items
	var_Items.AddItem("")
	// var_Items.SelectItem(var_Items.AddItem("")) = true
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.SelectItem(AddItem("")) = True]
	endwith
	var_Items.AddItem("")
oGrid.FreezeEvents(false)
oGrid.EndUpdate()

1029:
Is it possible to select nothing
/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	SelectionChanged = class::nativeObject_SelectionChanged
endwith
*/
// Fired after a new item has been selected.
function nativeObject_SelectionChanged()
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	? "SelectionChanged" 
return

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.FreezeEvents(true)
oGrid.AllowSelectNothing = true
// oGrid.Columns.Add("Column").FormatColumn = "1 apos `A-Z`"
var_Column = oGrid.Columns.Add("Column")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.FormatColumn = "1 apos `A-Z`"]
endwith
var_Items = oGrid.Items
	var_Items.AddItem("")
	// var_Items.SelectItem(var_Items.AddItem("")) = true
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.SelectItem(AddItem("")) = True]
	endwith
	var_Items.AddItem("")
oGrid.FreezeEvents(false)
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("")
	var_Column.AllowSizing = false
	var_Column.AllowDragging = false
	var_Column.AllowSort = false
	var_Column.Width = 24
	// var_Column.Def(2) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(2) = True]
	endwith
// oGrid.Columns.Add("Column").FormatColumn = "1 apos `A-Z`"
var_Column1 = oGrid.Columns.Add("Column")
with (oGrid)
	TemplateDef = [dim var_Column1]
	TemplateDef = var_Column1
	Template = [var_Column1.FormatColumn = "1 apos `A-Z`"]
endwith
var_Items = oGrid.Items
	var_Items.AddItem("")
	// var_Items.SelectItem(var_Items.AddItem("")) = true
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.SelectItem(AddItem("")) = True]
	endwith
	var_Items.AddItem("")
oGrid.Template = [Background(166) = 12895428] // oGrid.Background(166) = 0xc4c4c4
oGrid.Template = [Background(167) = 65536] // oGrid.Background(167) = 0x10000
oGrid.EndUpdate()

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

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	CellStateChanged = class::nativeObject_CellStateChanged
endwith
*/
// Fired after cell's state has been changed.
function nativeObject_CellStateChanged(Item,ColIndex)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local h,hChild,oGrid,var_Appearance,var_Column,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
oGrid.SelBackMode = 1
oGrid.DefaultItemHeight = 22
var_Column = oGrid.Columns.Add("Tasks")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAEhABUkIQAAYAQGKIcBiAKBQAGYBIJDEMQ3DjAUBjMK4ZwTC4AIQjCK4JDKHYJRpHEZgLBMJAAGIZYhhUYRUiYMkiJBGGDIDiGGI2SJAcbTVIEcx9EyUJSgSTJOjCMokTTIU4TTLYASbJafJJhWSaAiyMouDIOMg1BDNIw/Hika6jOgKUisNJXRzWIBTbDlOQ3JqnbCjOQRSrQBoNDAMAiiaKlbwJPK9RoieQXfwUAJrXJcFqXFSLVxNBKAQEBA=")
	var_Appearance.Add(1,"CP:2 1 1 -1 -1")
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%CS0 = 1")
	var_ConditionalFormat.BackColor = 0x1000000
oGrid.HeaderVisible = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,null,"Task 1")
	// var_Items.SelectItem(hChild) = true
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.SelectItem(hChild) = True]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 2")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 3")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

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

local h,hChild,oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
var_Column = oGrid.Columns.Add("Tasks")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
	// var_Column.Def(17) = 1
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(17) = 1]
	endwith
	var_Column.FormatColumn = "%CS0 = 1 ? `<bgcolor=000000><fgcolor=FFFFFF> ` + value + ` </fgcolor></bgcolor>` : value"
oGrid.HeaderVisible = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,null,"Task 1")
	// var_Items.SelectItem(hChild) = true
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.SelectItem(hChild) = True]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 2")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 3")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

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

local h,hChild,oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
var_Column = oGrid.Columns.Add("Tasks")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
	// var_Column.Def(17) = 1
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(17) = 1]
	endwith
	var_Column.FormatColumn = "value + (%CS0 = 1 ? `<r><fgcolor=808080>(checked)` : ``)"
oGrid.HeaderVisible = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,null,"Task 1")
	// var_Items.SelectItem(hChild) = true
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.SelectItem(hChild) = True]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 2")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 3")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

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

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	CellStateChanged = class::nativeObject_CellStateChanged
endwith
*/
// Fired after cell's state has been changed.
function nativeObject_CellStateChanged(Item,ColIndex)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local f,h,hChild,oGrid,var_Column,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
oGrid.DefaultItemHeight = 22
var_Column = oGrid.Columns.Add("Tasks")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%CS0 = 1")
	f = new OleAutoClient("StdFont")
		f.Name = oGrid.Font.Name
		f.Size = 12
	var_ConditionalFormat.Font = f
oGrid.HeaderVisible = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,null,"Task 1")
	// var_Items.SelectItem(hChild) = true
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.SelectItem(hChild) = True]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 2")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 3")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

1023:
How can I bold the checked items

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	CellStateChanged = class::nativeObject_CellStateChanged
endwith
*/
// Fired after cell's state has been changed.
function nativeObject_CellStateChanged(Item,ColIndex)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local h,hChild,oGrid,var_Column,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
var_Column = oGrid.Columns.Add("Tasks")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%CS0 = 1")
	var_ConditionalFormat.Bold = true
oGrid.HeaderVisible = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,null,"Task 1")
	// var_Items.SelectItem(hChild) = true
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.SelectItem(hChild) = True]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 2")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 3")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

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

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	CellStateChanged = class::nativeObject_CellStateChanged
endwith
*/
// Fired after cell's state has been changed.
function nativeObject_CellStateChanged(Item,ColIndex)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local h,hChild,oGrid,var_Column,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
oGrid.SelBackMode = 1
var_Column = oGrid.Columns.Add("Tasks")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%CS0 = 1")
	var_ConditionalFormat.ForeColor = 0x8080ff
oGrid.HeaderVisible = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,null,"Task 1")
	// var_Items.SelectItem(hChild) = true
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.SelectItem(hChild) = True]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 2")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 3")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

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

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	CellStateChanged = class::nativeObject_CellStateChanged
endwith
*/
// Fired after cell's state has been changed.
function nativeObject_CellStateChanged(Item,ColIndex)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	oGrid.Refresh()
return

local h,hChild,oGrid,var_Column,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
oGrid.SelBackMode = 1
var_Column = oGrid.Columns.Add("Tasks")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%CS0 = 1")
	var_ConditionalFormat.BackColor = 0x8080ff
oGrid.HeaderVisible = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Project")
	hChild = var_Items.InsertItem(h,null,"Task 1")
	// var_Items.SelectItem(hChild) = true
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.SelectItem(hChild) = True]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 2")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	hChild = var_Items.InsertItem(h,null,"Task 3")
	// var_Items.CellState(hChild) = 1
	with (oGrid)
		TemplateDef = [dim var_Items,hChild]
		TemplateDef = var_Items
		TemplateDef = hChild
		Template = [var_Items.CellState(hChild) = 1]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Column3,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Columns = oGrid.Columns
	// var_Columns.Add("C1").Def(0) = true
	var_Column = var_Columns.Add("C1")
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	// var_Columns.Add("C2").FormatColumn = "1 index `A-Z`"
	var_Column1 = var_Columns.Add("C2")
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.FormatColumn = "1 index `A-Z`"]
	endwith
	// var_Columns.Add("C3").FormatColumn = "100 index ``"
	var_Column2 = var_Columns.Add("C3")
	with (oGrid)
		TemplateDef = [dim var_Column2]
		TemplateDef = var_Column2
		Template = [var_Column2.FormatColumn = "100 index ``"]
	endwith
var_Items = oGrid.Items
	var_Items.AddItem("Item 1")
	// var_Items.CellState(var_Items.AddItem("Item 2")) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 2")) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 3")) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 3")) = 1]
	endwith
oGrid.EndUpdate()
? "Export CSV Items including Check-State:" 
oGrid.BeginUpdate()
var_Column3 = oGrid.Columns.Add("Check")
	var_Column3.Position = 0
	var_Column3.FormatColumn = "%CS0"
? Str(oGrid.Export("")) 
oGrid.Columns.Remove("Check")
oGrid.EndUpdate()

1019:
Is it possible to customize the editor selection colour of the built in text editor, from standard blue to black

local oGrid,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.SelBackColor = 0x0
oGrid.SelForeColor = 0xffffff
var_Editor = oGrid.Columns.Add("Edit").Editor
	var_Editor.EditType = 8
	var_Editor.Mask = ";;;rich"
var_Items = oGrid.Items
	var_Items.AddItem("")
	var_Items.AddItem("Just a text")
	var_Items.AddItem("")
oGrid.EndUpdate()

1018:
Is it possible to customize the editor selection colour of the built in dropdown editor, from standard blue to black

local oGrid,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.SelBackColor = 0x0
oGrid.SelForeColor = 0xffffff
var_Editor = oGrid.Columns.Add("DropDown").Editor
	var_Editor.AddItem(1,"This is just the first item")
	var_Editor.AddItem(2,"This is just the second item")
	var_Editor.AddItem(3,"This is just the third item")
	var_Editor.EditType = 2
	var_Editor.Mask = ";;;rich"
var_Items = oGrid.Items
	var_Items.AddItem("")
	var_Items.AddItem("Just a text")
	var_Items.AddItem("")
oGrid.EndUpdate()

1017:
The BeforeExpandItem event is fired when clicking the drop down filter button. What we can do to prevent that
/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	BeforeExpandItem = class::nativeObject_BeforeExpandItem
endwith
*/
// Fired before an item is about to be expanded (collapsed).
function nativeObject_BeforeExpandItem(Item,Cancel)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
	? "BeforeExpandItem" 
	? Str(Item) 
	? "ColumnFromPoint" 
	? Str(oGrid.ColumnFromPoint(-1,-1)) 
	? "ColumnFromPoint return -1, if the user clicks the +/- glitch, else it returns the index of the column where the click occurs." 
	oGrid.Items.InsertItem(Item,null,"new child")
return

local oGrid,var_Column,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = -1
var_Columns = oGrid.Columns
	// var_Columns.Add("Items").DisplayFilterButton = true
	var_Column = var_Columns.Add("Items")
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.DisplayFilterButton = True]
	endwith
var_Items = oGrid.Items
	// var_Items.ItemHasChildren(var_Items.InsertItem(null,null,"Group 1")) = true
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.ItemHasChildren(InsertItem(,,"Group 1")) = True]
	endwith
	// var_Items.ItemHasChildren(var_Items.InsertItem(null,null,"Group 2")) = true
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.ItemHasChildren(InsertItem(,,"Group 2")) = True]
	endwith
oGrid.EndUpdate()

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

local oGrid,var_Appearance,var_Column

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQgmPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYThdr4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA")
oGrid.Template = [Background(0) = 16777216] // oGrid.Background(0) = 0x1000000
oGrid.Template = [Background(32) = -1] // oGrid.Background(32) = -1
oGrid.HeaderAppearance = 0
oGrid.BackColorHeader = 0x0
oGrid.ForeColorHeader = 0xffffff
oGrid.HeaderVisible = true
var_Column = oGrid.Columns.Add("Filter")
	var_Column.DisplayFilterButton = true
	var_Column.AllowSort = false
	var_Column.AllowDragging = false
oGrid.EndUpdate()

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

local oGrid,var_Appearance,var_Column

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YNYuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4hhKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgbhOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWBMJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=")
	var_Appearance.Add(1,"CP:2 -4 -4 2 4")
oGrid.Template = [Background(0) = 16777216] // oGrid.Background(0) = 0x1000000
oGrid.Template = [Background(32) = BackColor] // oGrid.Background(32) = oGrid.BackColor
oGrid.HeaderAppearance = 0
oGrid.HeaderHeight = 24
oGrid.BackColorHeader = 0xffffff
oGrid.HeaderVisible = true
var_Column = oGrid.Columns.Add("Filter")
	var_Column.DisplayFilterButton = true
	var_Column.AllowSort = false
	var_Column.AllowDragging = false
oGrid.EndUpdate()

1014:
How can I draw a solid frame around the the focusing item

local h,oGrid,var_Appearance,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.SingleSel = false
oGrid.DefaultItemHeight = 20
var_Appearance = oGrid.VisualAppearance
	var_Appearance.RenderType = -1
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABOkGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEwpFAZBhgeDYMiSNoYDJCM4wHIURRJFCUJSGWQpTgSIgyT5HFIxXKoASbJabZLhWS6EpWOotTbIQQRYCkEyfKKfZyGURZQqOKA1DBZErWTJESRFJqLazgO4LAhyQYrVgAErzVKVCRNOqbJzADApdpGQJTULDNTQHRFIyhOSnIRrWbMAhid6JUZiVT4dBOIYhSYANAqCwLFqrDJmWrpV5WZjlZ47V6BdAyXJsIrmFJEXaOGhyDDlGybSDZYryfZhUziUw4XjbWwZDqPF6DKTTdSGLREE8WZVlURZvDaep3C+AY8kAYRgGCCBJECUhjDoHROEYWgoAGTQ1CEEx9lGMY0CQUYSnuZQDBGBYFlOH5+H+igGAKAJgEgFgGgGVgDn4CoCmCSA2A6A5hAgDgQgSYRIE4EoFGGCBiBeBhhkgPgbgcYgICoH4IGGWIOCSBhiGiHgVgoYooFoAoLGIWI+DCCgjCiTgrgII4ImYOoOmOSJ2AYOpWlQDQBICA=")
oGrid.ShowFocusRect = true
oGrid.Template = [Background(19) = 16777216] // oGrid.Background(19) = 0x1000000
oGrid.LinesAtRoot = -1
var_Column = oGrid.Columns.Add("P1")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Root")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

1013:
The frame around the focusing item is not very clear. Can I show it larger or more cleared (sample 2)

local h,oGrid,var_Appearance,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.SingleSel = false
oGrid.DefaultItemHeight = 20
oGrid.ShowFocusRect = true
var_Appearance = oGrid.VisualAppearance
	var_Appearance.RenderType = -1
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEwpFAZBhgeCRUgyJI3RgMUIzVAcRRFEiUJQlIZZCjOAw0SIMU7xZRcNxsACnaZnCR4NiuRYiUhOcqzRIQIQ4CiEahqOgJbDUJYwWZKAyjBY8XTZFCSJCpeJ6egOc5jRxQUp1WAEXx3GSsJKvCZ5cADBY+VLQNS0JBtMSTKSLaiuWoIJqCPaDRheWKQJh1NSnLqEcjyYANDxDCZlWzAYxWTZ2Uz7N7PbB0HY4DyPGKZYrfESVRbQcZNS6nNigPI9XhfGq6VjRe63ZaOaYpWrnOJqTRWjOKYujWdZ2BGO5lkuBAAkmcQkDmDBEAwEQJCgGhMGcQ4pkiSxGAAOYmkQIhvkYNg2gSCgyj+LI4GIMIwF2XQoAYAoAmASAWAaAZgggJgKFiT54DYDoDmECBGBKBJgGgTgWgWYRoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChiigYgsgsYYYBYMIKCMKJOCuDRjGiOgLg6Y5InYPoPmQCAkmsXAQDQBCAg=")
	var_Appearance.Add(3,"CP:2 -3 0 3 0")
oGrid.Template = [Background(19) = 50397441] // oGrid.Background(19) = 0x3010101
oGrid.LinesAtRoot = -1
var_Column = oGrid.Columns.Add("P1")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Root")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

1012:
The frame around the focusing item is not very clear. Can I show it larger or more cleared (sample 1)

local h,oGrid,var_Appearance,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.SingleSel = false
oGrid.ShowFocusRect = true
var_Appearance = oGrid.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAEhABHoDg6AADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBIZQ7BKNIxjSJwFiCCQwSDKEjyCKcGRHF6MI6gOYpCgOIYjRJNIASVAceAAGaUZrjSgobjmOYhAJCLqhYIgASXJqLaBlOCaAieSc+QhjQJIJoeCZXU5TFg1BTsOhqEqcRiseaRVDCaIJWzbdYWLDdNQHHKYLjnWorbpSJZ5XjNEySDQkMS9PrEJ7vST8FBCdAABLJUB2BR9RwxRafKpnWwJDpmCaOQLXEB5DK1PyVMTKYrtGy7GrIAJxWxbV4UHh+QABOzIMAvHKJMwvHYcUZne5XVLeF41HbONogPaJZyIAK2cLROq6Xo7GEcJZEcLASB4DwvgWUZlE6AQQhKAYkkYdA6hyDIwHgSoqFwQgmnsYxjGgSIiBOTpSEiAwRgOJI7j4JAHA6U5wm0MpPlOBIjD8TZiGYCICiCGAuA6AxhAgMgSgOYQ4DYBg/g6cw1n+ABOmMMJ9DmCwjnScw4RsVJngkYh4hoKIKmKKI2CmC5ikiQgqgiT5jhyMw8g4QwIn0OIKEiCJhD8DwTGyfA7k0WQOEWEQkGkJhIhKZB5DYSoTiSCQEn4PQOCOXJcCeIJjliaIQk0aRyF4O5llmAhfhgZhJg4ZoYiaAxYn4PZOhOZJaCUZYTiYQw1mcOZUm+HQnHmWh4h6Z4pnYeYfk0eYsmqG4nAgNJ2DqD5DkCWoiGiOgqgyI5omoR" ;
 +"oNiSaQKFKEojCaM4ugSFhOjkAJcieKgDkaH4oioGoOiaKRqgqEoqDddwyhuAxPgOMJ8DyDZqk6NYtCsapmjiLprHqdo6i+K5K1oPhOlqPgKD4DpjnII4yiOewuk6MxtAsMpSjObQ7EaT4wk6ewYn0PgPAiCJkjeLgDk6X44i4G4OmaORuguEpqDkLAzkaWg+E8GIUmaPIvEOVpzj2Lxbl6eo+G+S5in4OYPmOaJyjuTwjnYWpBg6DAjAqQZwkwJwNkKcJsEcEJCDBEpaD6Dw8BiapGjGSgfB2RpxmyBwgkicZ8haBw/g+M5TBcPQPlOXJskscp8jsMJMnMLJXDGTZzEyYw2kwMoDlcFw9i2M4/EGUJPg0CxFlENBtCcSJSnQfQ0m+SgPHsaJ7lALZLG6XZVHWDRfFqVY1k0ZxdladYTnifJUGaeAWAeMnSGcGWgBObJ3lWbwdjKW5cHcTZPHaLkN4GxXDlFqFsA4uRbBOGAFAEIzAsDEFOBkfYqR4D6AOBEYo8QuBvAmMceInBDgcD0JwOIqQyJ1DMAwG4IANDnHSMoK4QhOgMBGNEIQvQWAdGenETIswGiddsAAQAgCAgA==")
	var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAEhABeEGACAADACAxRDgMQBQKAAzAJBIYhkGYYYCgMZRUDGCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADDFIBQSLAYROGSDJBGODJDjWGIeQLOEhQHIMRxPE6UYLhWYpBDKPYcUbGc7yBBMVwGf59XzACoKSheQIVSDQkw6Fo6NYhAxHALyNRkBy8f60KjtGpodDUJYvW5JYyjBZ8EznOqbJBkeJ7BgOe5NQjaD72VgdWQJFSWJajWYYJDOJY2ZAAE5TVINEwxJbDaylChIdxaF6WAzZEBhBYoATPNLBMrhWqKDw2XaQWBCOgwHYeR5LU7BdRwbIrRq2eAAXbcVyXfDddZlBK+QA0SK9lRVTKvJZmKgBWw1COSxmAAGw4kcNx1iKFBiCAfQsG8lJemucg7nsXpUHOOxrm+DI3jOH4XAOBx2nscw0j2HhPG4L5uGEVIECQCBCEUAYkGMHQHFGSBlGaAxkEgQgTGCVBsDYQhCgQJZrHKUggGEShkFGNgIlsNpPnMHJHD+TADAIJIJiIWIeCqChikiIgmgiD5zHyXxgiACJKCuC4jHiZgtg6I4IlkCQwkwOIonMPJjEkFhGhGZBpA4KoMBCGJuEiE5lAkGg7hMY4JEYVoUCUNAOE6FZl0KWQACWOR2GKF5mBmChchkJRZhoXYaCKKYqGuDglEmNhuhWZpIiYc4dCcCRqGmHZlgm2YxAwSQKESHwkFkKgpiAIAIH4PIimOOg2DiChoiQJRRD+T" ;
 +"ZDHCfwyAyCgyg+JpiioYJ/DgDgIlECQ6lwRAEICA=")
	var_Appearance.Add(3,"CP:2 -2 0 2 0")
oGrid.SelBackColor = 0x1000000
oGrid.SelForeColor = 0x0
oGrid.Template = [Background(19) = 67043328] // oGrid.Background(19) = 0x3ff0000
oGrid.LinesAtRoot = -1
var_Column = oGrid.Columns.Add("P1")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_Items = oGrid.Items
	h = var_Items.AddItem("Root")
	var_Items.InsertItem(h,null,"Child 1")
	var_Items.InsertItem(h,null,"Child 2")
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

1011:
I have a column right-aligned. How can I display its check box aligned to the right, as it appears to the left of the cell's caption

local oGrid,var_Column,var_Column1,var_Column2,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.ColumnAutoResize = true
oGrid.DrawGridLines = 2
var_Columns = oGrid.Columns
	var_Column = var_Columns.Add("Left")
		var_Column.AllowSizing = false
		var_Column.Width = 96
		// var_Column.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(0) = True]
		endwith
		var_Column.FormatColumn = "0 pos `A-Z`"
	var_Column1 = var_Columns.Add("Center")
		var_Column1.HeaderAlignment = 1
		var_Column1.Alignment = var_Column1.HeaderAlignment
		var_Column1.AllowSizing = false
		var_Column1.Width = 96
		// var_Column1.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(0) = True]
		endwith
		var_Column1.FormatColumn = "0 pos `A-Z`"
	var_Column2 = var_Columns.Add("Right")
		var_Column2.HeaderAlignment = 2
		var_Column2.Alignment = var_Column2.HeaderAlignment
		var_Column2.AllowSizing = false
		var_Column2.Width = 96
		// var_Column2.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(0) = True]
		endwith
		var_Column2.FormatColumn = "0 pos `A-Z`"
		// var_Column2.Def(34) = "caption,check,icon,icons,picture"
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(34) = "caption,check,icon,icons,picture"]
		endwith
	var_Columns.Add("")
var_Items = oGrid.Items
	// var_Items.CellState(var_Items.AddItem("Item 1"),3) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 1"),3) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 2"),2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 2"),2) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 3"),1) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 3"),1) = 1]
	endwith
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderHeight = 48
oGrid.ColumnAutoResize = true
var_Columns = oGrid.Columns
	var_Columns.Add("And others ...")
	var_Column = var_Columns.Add("")
		var_Column.HTMLCaption = "First Column"
		var_Column.HeaderVertical = true
		var_Column.Width = 36
		var_Column.AllowSizing = false
		// var_Column.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(0) = True]
		endwith
		// var_Column.Def(48) = 8
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(48) = 8]
		endwith
		var_Column.Position = 0
	var_Column1 = 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(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(0) = True]
		endwith
		// var_Column1.Def(48) = 8
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(48) = 8]
		endwith
		var_Column1.Position = 1
	var_Column2 = var_Columns.Add("")
		var_Column2.HTMLCaption = "<r>Third Column"
		var_Column2.HeaderVertical = true
		var_Column2.Width = 36
		var_Column2.AllowSizing = false
		// var_Column2.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(0) = True]
		endwith
		// var_Column2.Def(48) = 8
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(48) = 8]
		endwith
		var_Column2.Position = 2
var_Items = oGrid.Items
	// var_Items.CellState(var_Items.AddItem("Item 1"),3) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 1"),3) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 2"),2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 2"),2) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 3"),1) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 3"),1) = 1]
	endwith
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderHeight = 48
oGrid.HeaderSingleLine = false
oGrid.ColumnAutoResize = true
var_Columns = oGrid.Columns
	var_Columns.Add("And others ...")
	var_Column = var_Columns.Add("First Column")
		var_Column.HeaderVertical = true
		var_Column.Width = 36
		var_Column.AllowSizing = false
		// var_Column.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(0) = True]
		endwith
		// var_Column.Def(48) = 8
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(48) = 8]
		endwith
		var_Column.Position = 0
	var_Column1 = var_Columns.Add("Second Column")
		var_Column1.HeaderBold = true
		var_Column1.HeaderVertical = true
		var_Column1.Width = 36
		var_Column1.AllowSizing = false
		// var_Column1.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(0) = True]
		endwith
		// var_Column1.Def(48) = 8
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(48) = 8]
		endwith
		var_Column1.Position = 1
	var_Column2 = var_Columns.Add("Third Column")
		var_Column2.HeaderVertical = true
		var_Column2.Width = 36
		var_Column2.AllowSizing = false
		// var_Column2.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(0) = True]
		endwith
		// var_Column2.Def(48) = 8
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(48) = 8]
		endwith
		var_Column2.Position = 2
var_Items = oGrid.Items
	// var_Items.CellState(var_Items.AddItem("Item 1"),3) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 1"),3) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 2"),2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 2"),2) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 3"),1) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 3"),1) = 1]
	endwith
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderHeight = 48
oGrid.ColumnAutoResize = true
var_Columns = oGrid.Columns
	var_Columns.Add("And others ...")
	var_Column = var_Columns.Add("")
		var_Column.HTMLCaption = "First"
		var_Column.HeaderVertical = true
		var_Column.Width = 20
		var_Column.AllowSizing = false
		// var_Column.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(0) = True]
		endwith
		var_Column.Position = 0
	var_Column1 = var_Columns.Add("")
		var_Column1.HTMLCaption = "<c><b>Second"
		var_Column1.HeaderVertical = true
		var_Column1.Width = 20
		var_Column1.AllowSizing = false
		// var_Column1.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(0) = True]
		endwith
		var_Column1.Position = 1
	var_Column2 = var_Columns.Add("")
		var_Column2.HTMLCaption = "<r>Third"
		var_Column2.HeaderVertical = true
		var_Column2.Width = 20
		var_Column2.AllowSizing = false
		// var_Column2.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(0) = True]
		endwith
		var_Column2.Position = 2
var_Items = oGrid.Items
	// var_Items.CellState(var_Items.AddItem("Item 1"),3) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 1"),3) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 2"),2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 2"),2) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 3"),1) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 3"),1) = 1]
	endwith
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Columns,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.HeaderHeight = 48
oGrid.ColumnAutoResize = true
var_Columns = oGrid.Columns
	var_Columns.Add("And others ...")
	var_Column = var_Columns.Add("First")
		var_Column.HeaderVertical = true
		var_Column.Width = 20
		var_Column.AllowSizing = false
		// var_Column.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column]
			TemplateDef = var_Column
			Template = [var_Column.Def(0) = True]
		endwith
		var_Column.Position = 0
	var_Column1 = var_Columns.Add("Second")
		var_Column1.HeaderBold = true
		var_Column1.HeaderVertical = true
		var_Column1.Width = 20
		var_Column1.AllowSizing = false
		// var_Column1.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column1]
			TemplateDef = var_Column1
			Template = [var_Column1.Def(0) = True]
		endwith
		var_Column1.Position = 1
	var_Column2 = var_Columns.Add("Third")
		var_Column2.HeaderVertical = true
		var_Column2.Width = 20
		var_Column2.AllowSizing = false
		// var_Column2.Def(0) = true
		with (oGrid)
			TemplateDef = [dim var_Column2]
			TemplateDef = var_Column2
			Template = [var_Column2.Def(0) = True]
		endwith
		var_Column2.Position = 2
var_Items = oGrid.Items
	// var_Items.CellState(var_Items.AddItem("Item 1"),3) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 1"),3) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 2"),2) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 2"),2) = 1]
	endwith
	// var_Items.CellState(var_Items.AddItem("Item 3"),1) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 3"),1) = 1]
	endwith
oGrid.EndUpdate()

1006:
How do I automatically bold items being checked

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	CellStateChanged = class::nativeObject_CellStateChanged
endwith
*/
// Fired after cell's state has been changed.
function nativeObject_CellStateChanged(Item,ColIndex)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
return

local oGrid,var_Column,var_Column1,var_ConditionalFormat,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.SelBackMode = 1
var_ConditionalFormat = oGrid.ConditionalFormats.Add("%CS0","check")
	var_ConditionalFormat.Bold = true
// oGrid.Columns.Add("Items").Def(0) = true
var_Column = oGrid.Columns.Add("Items")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.Def(0) = True]
endwith
// oGrid.Columns.Add(oGrid.ConditionalFormats.Item("check").Expression).FormatColumn = oGrid.ConditionalFormats.Item("check").Expression
var_Column1 = oGrid.Columns.Add(oGrid.ConditionalFormats.Item("check").Expression)
with (oGrid)
	TemplateDef = [dim var_Column1]
	TemplateDef = var_Column1
	Template = [var_Column1.FormatColumn = Me.ConditionalFormats.Item("check").Expression]
endwith
var_Items = oGrid.Items
	var_Items.AddItem("Item 1")
	// var_Items.CellState(var_Items.AddItem("Item 2"),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Item 2"),0) = 1]
	endwith
	var_Items.AddItem("Item 3")
oGrid.EndUpdate()

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

/*
with (this.EXGRIDACTIVEXCONTROL1.nativeObject)
	CellStateChanged = class::nativeObject_CellStateChanged
endwith
*/
// Fired after cell's state has been changed.
function nativeObject_CellStateChanged(Item,ColIndex)
	oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
return

local h,oGrid,var_Column,var_Column1,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.LinesAtRoot = 4
oGrid.SelBackMode = 1
var_Column = oGrid.Columns.Add("Items")
	// var_Column.Def(0) = true
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(0) = True]
	endwith
	var_Column.PartialCheck = true
var_Column1 = oGrid.Columns.Add("Format")
	var_Column1.FormatColumn = "%CS0"
	var_Column1.Caption = var_Column1.FormatColumn
	// var_Column1.Def(5) = 8421504
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.Def(5) = 8421504]
	endwith
	// var_Column1.Def(8) = var_Column1.Def(5)
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.Def(8) = Def(5)]
	endwith
var_Items = oGrid.Items
	h = var_Items.AddItem("Root")
	var_Items.InsertItem(h,null,"Item 1")
	// var_Items.CellState(var_Items.InsertItem(h,null,"Item 2"),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(InsertItem(h,,"Item 2"),0) = 1]
	endwith
	// var_Items.CellState(var_Items.InsertItem(h,null,"Item 3"),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(InsertItem(h,,"Item 3"),0) = 1]
	endwith
	// var_Items.ExpandItem(h) = true
	with (oGrid)
		TemplateDef = [dim var_Items,h]
		TemplateDef = var_Items
		TemplateDef = h
		Template = [var_Items.ExpandItem(h) = True]
	endwith
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Columns.Add("Items")
var_Column = oGrid.Columns.Add("Format")
	var_Column.FormatColumn = "%CD0"
	var_Column.Caption = var_Column.FormatColumn
	// var_Column.Def(5) = 8421504
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(5) = 8421504]
	endwith
	// var_Column.Def(8) = var_Column.Def(5)
	with (oGrid)
		TemplateDef = [dim var_Column]
		TemplateDef = var_Column
		Template = [var_Column.Def(8) = Def(5)]
	endwith
var_Items = oGrid.Items
	// var_Items.CellData(var_Items.AddItem("Item 1"),0) = 1234
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellData(AddItem("Item 1"),0) = 1234]
	endwith
	// var_Items.CellData(var_Items.AddItem("Item 2"),0) = "this is just an user data"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellData(AddItem("Item 2"),0) = "this is just an user data"]
	endwith
	// var_Items.CellData(var_Items.AddItem("Item 3"),0) = "01/01/2001"
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellData(AddItem("Item 3"),0) = #1/1/2001#]
	endwith
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Column1,var_Column2,var_Editor,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
var_Column = oGrid.Columns.Add("Items")
	var_Editor = var_Column.Editor
		var_Editor.EditType = 3
		var_Editor.AddItem(1,"Item 1")
		var_Editor.AddItem(2,"Item 2")
		var_Editor.AddItem(3,"Item 3")
var_Column1 = oGrid.Columns.Add("Format")
	var_Column1.FormatColumn = "%0"
	var_Column1.Caption = var_Column1.FormatColumn
	// var_Column1.Def(5) = 8421504
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.Def(5) = 8421504]
	endwith
	// var_Column1.Def(8) = var_Column1.Def(5)
	with (oGrid)
		TemplateDef = [dim var_Column1]
		TemplateDef = var_Column1
		Template = [var_Column1.Def(8) = Def(5)]
	endwith
	var_Column1.AllowSizing = false
var_Column2 = oGrid.Columns.Add("Format")
	var_Column2.FormatColumn = "%C0"
	var_Column2.Caption = var_Column2.FormatColumn
	// var_Column2.Def(5) = 8421504
	with (oGrid)
		TemplateDef = [dim var_Column2]
		TemplateDef = var_Column2
		Template = [var_Column2.Def(5) = 8421504]
	endwith
	// var_Column2.Def(8) = var_Column2.Def(5)
	with (oGrid)
		TemplateDef = [dim var_Column2]
		TemplateDef = var_Column2
		Template = [var_Column2.Def(8) = Def(5)]
	endwith
	var_Column2.AllowSizing = false
var_Items = oGrid.Items
	var_Items.AddItem(1)
	// var_Items.CellValue(var_Items.AddItem(0),0) = 2
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellValue(AddItem(0),0) = 2]
	endwith
	var_Items.AddItem(2)
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Template = [RadioImage(0) = 32699122] // oGrid.RadioImage(false) = 32699122
oGrid.Template = [RadioImage(1) = 16777216] // oGrid.RadioImage(true) = 16777216
// oGrid.Columns.Add("Check").Def(1) = true
var_Column = oGrid.Columns.Add("Check")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.Def(1) = True]
endwith
var_Items = oGrid.Items
	var_Items.AddItem("Radio 1")
	// var_Items.CellState(var_Items.AddItem("Radio 2"),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Radio 2"),0) = 1]
	endwith
	var_Items.AddItem("Radio 1")
oGrid.EndUpdate()

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

local oGrid,var_Column,var_Items

oGrid = form.EXGRIDACTIVEXCONTROL1.nativeObject
oGrid.BeginUpdate()
oGrid.Template = [CheckImage(0) = 32699122] // oGrid.CheckImage(0) = 32699122
oGrid.Template = [CheckImage(1) = 16777216] // oGrid.CheckImage(1) = 16777216
// oGrid.Columns.Add("Check").Def(0) = true
var_Column = oGrid.Columns.Add("Check")
with (oGrid)
	TemplateDef = [dim var_Column]
	TemplateDef = var_Column
	Template = [var_Column.Def(0) = True]
endwith
var_Items = oGrid.Items
	var_Items.AddItem("Check 1")
	// var_Items.CellState(var_Items.AddItem("Check 2"),0) = 1
	with (oGrid)
		TemplateDef = [dim var_Items]
		TemplateDef = var_Items
		Template = [var_Items.CellState(AddItem("Check 2"),0) = 1]
	endwith
	var_Items.AddItem("Check 3")
oGrid.EndUpdate()