79
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Items.ItemHeight(0) = View.DefaultItemHeight
	// FilterBarFont.Size = Me.Font.Size
	// ToolTipFont.Size = Me.Font.Size
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComDefaultItemHeight of hoView to 36
		Set ComHeaderHeight of hoView to (ComDefaultItemHeight(hoView))
		Set ComSortBarHeight of hoView to (ComDefaultItemHeight(hoView))
		Set ComIndent of hoView to 26
		Set ComCheckImage of hoView OLEUnchecked to 16777216
		Set ComCheckImage of hoView OLEChecked to 33554432
		Set ComCheckImage of hoView OLEPartialChecked to 50331648
		Send ComEnsureVisibleColumn of hoView "Function"
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
	Get ComItem of hoColumns "Function" to Nothing		Send Destroy to hoColumns
		Send Destroy to hoView
		Variant voColumns1
		Get ComColumns to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn
			Get ComItem of hoColumns1 0 to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComDef of hoColumn OLEexCellHasCheckBox to true
			Send Destroy to hoColumn
		Send Destroy to hoColumns1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComImageSize to 32
	Variant voStdFont
	Get ComFont to voStdFont
	Handle hoStdFont
	Get Create (RefClass(cComStdFont)) to hoStdFont
	Set pvComObject of hoStdFont to voStdFont
		Set ComSize of hoStdFont to 16
	Send Destroy to hoStdFont
	Send ComImages ("gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOqNUqdPq9VrFWrlbr1QpdhAFAkFis1ntFptVrtkrpszrNvmVxqk3uVtm1kmF3sdBvF/wGBmV+j9BYGHwWJulfxdax2NyFdx2JlV6l9Nw7AAGZymdz2Cy2GxErvWcz9ivlwyV21cuxugwktzGIzmvwtl0+53U5y0a0Wazmmyu/3dCyOMyXHx/J5nIr9q3uyqnBxFN3G46ma4vb7mD2Ng4nZze00fDkHC7t7us2rOX5tguetpHRlmz4HVqnXk1PjHO+CMPo9MBMC+j2vC8j7wS8cFNI4kBo05UIvfCT/NsnsApU+0Fqg/T+oy/kPxC0sEQfErKQK96+w28UWRI8UGvO8sTLS9r2PWmsMJTDTask3CsIbIEQRA3shOXEEAO/GclJ9FEKrrA8FRbKMXRIlb0JxCkjS1LMswhCcvuel0cv26cSMa8Ufx+2sQwhEUoSXOCjSbLcnxjKc7sdKUVyq28NtVI71P9P7JxtQEapjQ6fzfM8zPfNE2PhIsLL63E40slk5y7N89LcyU9SvMb3SdUc6VJLj5VLVLfO/PS9KzNFHUa/0XyBD0dxlS9cxhMlTRSoNXypPErWDPyfNS+MwprRNO0FD8wVVZ1AI08URwVRjtJ1WCn21QkkUrXVLVPQS/XIkFgTxT9iONZ9xVTdq+L1eKg3kkF6Upe68XtfV51/MtrVjBlwYFL1ev8y1/P6/lyzzYl02wntj0RVFmS1Qa+M5as93QxEUW9e993rfmQ2+vy65M/mL1lhl/2bj2ByVduMtNhCJT9hdz41nN14Ld12Z9UjfI/oUAaGseiw6+uFLLhcVabJOS5RqOE0BHlZ5VnEr5fOMs3st+aa/bbRzrJGV51Y0b0DbqaWXZD90hIsPbjWu52+6Wyadpe66hhO+P/XioW5rD8ZbrUZuVg6n1dsE/cXmewu1m9PVwnd35/nueXho/NaJzmjc61W76esuT77eG8pTquy9TwWH8LEzG8RDfFalx3Gcfvna9rvG/cptGLd9tuI6TZOP5Fiqi99vea+X4VRcBq/JZZtVQ9cwSs5lsXE372+a9z7PbfB3VVqHyvMctLto8uob6eV0m/cD6MN2v+T33t6sBut42vdv2bJ8a997x2maFJfK+qArbGJPEKE+1qTflMsIdW/GCJX17KcT6/czr/X+u1g29B7j/4BQfWkkx4zIHisjhPCmE0K4SwtXM+d4BvHRwNZOoBph9IJvPek9d40FoMJxf691jj2ywQQcHEWET4XJwkTszlVqm2GokewxtBT1DpQjRxDN0rUVDNKdC3lb6tzNOwh6upMSSYfv4YBCl/bsn9PxiFCEo7SI6Obc9HeOrnY8x4jtHtdpN4GRbaorhsbu18Pph5CiHymI0RpSXGJ/z2oUOxYxG858AyiI+bfJtuTcG5yelBJyT8okhqFd4a5yxL0rvulYtKCsZiWxWkc1s1cRoxxwhA31DLE0mR9l9HqX8fJgTDmFMVH0MIsRzVYnwnMi1dyzmhLt2kS2pxIiU62Wj5ptQGlSYFakLonTUJNLKaM5WzlffEkuFkk5wTrhVO2eE7G6lJhxFFYUZ55zmn0WuBCD4pzhirFCKkbomsOoIYmZx5p90LoYWGPdD5g0QmJRKYxbZ6zYoVQ2jVGylSak7KSkFH6RSjpHKFuU+YMyNo5SulkC6I0vonTCitMXPoEpVS2H5FQfEqp2R1opIgAEkJISYARTCukOhmPNI5Ex/wzGHUsicMwA1LHgQ90Y/KpoQHAD+pB/R4NzIaMAB9Xaw1gqaAOsh/A/ptIkWUfhGK1kZH8RgH5GqvgArqRmt4AAPrTroRofBGADkqr6Rmu4D7CEaHARiwpJrEEZsXXwlVjyMWRsaRqwdkLGNBABZmytmyMnaINZqyVpLR2ftKAAAdd6h2osbaskdiq4EZtgSmyNcbVW" + ;
"RJNXe3AA7REar3b0stlAAXBtoRmvJGLjEYAHUWsFcwCD/rnaop9aEICMAPdK5hT6xpeuzdOtAgKuJeGfdq6ggEbkTvAP+p9UCHXrvKkcgIA==")
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABfICg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7EMRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsOatVqjG5sYjcGC3La9cz3Pq/bpuDCbMxuaK1TrYXr1TTrcofBDldAxXRKDxRDWVhLnYOw9i6XxzjuXprCaOoKB6EwbiCZZCGOdZYlcT4xHmbhMnwNxtn+G5bmqdZ7n4Pw/i+X5zm+dQ9g4CAFjsfAJheOI8HsDoWDWTB/lwSAQkmA5PEgRYoDyDwYFYFoFmGCBmBqBphDgRJ0gOTIYBGRB/lyRh0iSCZbjYWJzgWDwIjYLoLmMCJGDKDJjBgWgqG6YhyhGHRzA2aJ1mCABOAiOJvhCZBJBYRoRmSCQmEqEQimkAZgg8TZnDCV4UkmCUmBKZYJGYWoWCUUhiFMNZckNUh2GENoaGaGZmgmJhqhqZpGGIEx2GYIxSGGGJdggWJth2Z4JmYeoemeSZ2H6H4hGmQhihyTRHGYLg7CiCgmgqIpokoNoOiOaJ4jqAochqaZGgaCxpAoZoaiaaJqEmWIcGgShcnCJwqEqFoR3YOoFlgchflqNouiuawHmWSYqGkWZQhcatzmaOoumuSp2j6L5bBaKo0GQKRnGGCxqiyCwmkqMpsksNpOGUGI7A0ew1G0Rxlg0PptgsZuDG2Sx2l6N5tnYNZZjUDRXDCVo5l2FoymqOpukuNpujubwLjmWY5k0ZwxkaFxYlWdp6j6b5Lnafo/nABQdg2FxcUsY5BkmXAkmeQpckwNRrkKTh8CSHZBk4NwyC4KxxgMDwakOMZDn8GgwnGAo2C4cwthMcwmCcMoHBMHRehwTIghySYNksZwcH4HBMEsHx5hyPItiweYxnwSZEH4Mozn0fR+DMAo7EYJ50gkdZelKdNql2UgJn0GIukwH4HicQRai2GI4mSVpNl0dZGledgNgcYpYDWUx3FsOQi5YV5anaTY3G6W53A2RxylydxFjiaxEFCCgBBAQ==" to Nothing
		Get ComAdd of hoAppearance 2 ("gBFLBCJwBAEHhEJAAEhABcoFg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7EMRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsLpOS5LNKsaxmWLYdhFdTxQi6LpvfA8BwXC6JY7heRYRbFbYxRjGNi1TS7G4nGKd5WGuL4UHwI4VkaYxii8V4pgQMgVBQdQ5iCTYGi8T4vlWbJ3nuPg+l+H5AlSCg6ByPBoE8Ap3jqYxhBido5g0OgOGOGI4CsSpCCAcgcAuEokiEN5NCKfJ9DyTRjnScg1CEYxOBmBpPCgagdgcIZoHoGIFA4AxQkCAxKAgKBwgGSpIBCZhjF2E5UnQPQMiMCJBCIBwxkSQgsgo+JtDKT4ziiQw+k6EwAnsOgLnkHI+yCQ4iEuE4klkPhShEJBpAoPgymOMoaDgHBjFMBgyD0HYTiCZSZhIIIGC4ChiHSew5kwM5omILZPiOBI0hwZw5kodIdA+M4Uj4PxOmMSJ9DuTQzmyZgviceZagaHVfj4awwmaAh2GUIYmCOEZZDaDRDFGdwcg4EwyHMN4LBOaJbCoaZqgKH8qkMfIyD8DozDyfA7A0Coui0OpMmOZJdCsahKg6NooioChwmEMxLEoXJbDUTRXGSUgykyMgQG0GpPHMdI3D4TRCgSeQ0kmaw+lGNAtCOZJVCiT5DhyRQwAqMg0EoDBBGEGAsASC5yiSCw+k4Mp6lWNQuksTpRjMTxDGzJwGmGMpDDKXYTECSAxl6Q5olkK4PgMMIVkASRMBMBgzEkaZEjsNALhIZA6AeQBgk0ZJEgAAJ0CIAgODMNIsD6DRih9uYwFyAwfCUb5ijmbI+gwdxkk8MZMGeMpPCkDxzBiC5MHMPJLDSSROFMLIoBEQogEMFJPnENYQGgE4DCOaJfC7tYkhGTQ0kyWwykuXpMiyRpKjKR4wngM4JmOWJACCdYtHMWw+Eych4nINYLAEYA8AgdAEEsQZajaQoog4GxPiMVIolcdxNG8XZVkmNoRwWRVBlFeFEeAZQJgnFiHgHwcAhjhHgGMSI5xki2CyA4EQsA3i0HkBsLwKRFgAHcPkHopBJBcBeDUYI7xyDOHqKkWo2hLCsDIBIY4qQ5A8DoMMYwOAqCSBGKgU4yB2iDBwIgB4hxQgAAWNgBoAgsBdEcBUQ4sQ9A/HqD0JI8RpBzH2OYVgahLBHFiJQJweQiDhDUE4SAARQAzFsG0EQwA6AOWSBkFgVAIBCHeGERQFQiCQHeFkC4vkiB8DyB4F4QxVDvGMNEOQexMjlBeOAKQiQLgfDA7QEAaRiBdEkH8TI7AZiFBAGYBIABWjYBiGACioQ4C1A+AMMgWhfgxHgPsT4URIB0COKgPgjRwiAB8AYUArxBgCF6J4GY5hrAOCAPAAoGRRCsCIMEXATXfgAF8BMJwURuEQDgD4Q4OBoAeHGFgLIwQrC2D0JoSQ+QvhrHoSgQI8AbDFGID8C4Ah6BQAQAASACwgCYCMAUMARAvCKAiAMCAokeCKBEOAKgCBoDaHuMsEAqwJDiACDURg8R6gPCyDofYWAhgoDIJ4ZAuhoiGAYGgRoQw/A0GMMga4GwxiEDeIYYInATCDBQAoBAwAoDlA0KMBoVRGiDGwDQUYIRsgaGGDgM4LAwDWB8EcIA1APhjEgGQVwgRIgjFIIQHokgZA+CSEkLIKQSjHAwMsCwDAsAEB2ABTIwRwD6A8CMToSxkAxE4HYIw+BsgbBEDAHYBwojCBoIYFgXSjABE4MsHIbQWhlGILQS4UhvBdAUKEEwHgxDAAABQQQUAhgKHiDwE4JS4A7BGLQZwCR4g" + ;
"aBEMUYAqgKApHgGwVAIRNgvBMMQXImwZDtE4I8UIyAZCDCAE8AwrhgAdEEBACQLRCg4FEB4AYtA7CdEiPQMoJAMDNCkOMCAXAFDhH0D0Q4EgfAaGSK4NYzRUj9BuCgAgswOBjB4Fqpw8B2ADAwE4A4Qx2DAE6JIaQPQGhAGKBcIQ5B5gHByKIFARwADbAyKUfgdBKBBGyEcVIAB/ijHoIoSA0gdBNl+OATYERZgBGSDYWIWAUCEGKA4FAhR7CIBtYQGYZg4CMAiKEcAOwkBjHWE8Z4lQgA+DkBoTohwwCeAaMEEgBQCCABgHMRwQRhhMEWFQd4HwZgwDqFESItAbAGEANCpINAzANCCJkK4ah+heFYBURwsQrS2CsMYMoWGBhYDWI0EInQgiApXaOVI1QFDsC8MUNoMBMA1HMJga4eh+BeAWOgNNowGjYzCGAAwax+iJBeBVT4gxoBIAGFsJFBxgBiGKFkKQ7g5DFFQEcAo4AzDDACKEQQLgCiJDYB0MgRBCCQAgQEA==") to Nothing
		Get ComAdd of hoAppearance 3 ("gBFLBCJwBAEHhEJAAEhABQ4Fg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7EMRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsLpOS5LNKsaxmWLYdhFdTxQi6LpvfA8BwXC6JY7heRYRbFbYxRjGNi1TS7G4nGKd5WGuL4UHwI4VkaYxii8V4pgQMgVBQdQ5iCTYGi8T4vlWbJ3nuPg+l+H5AlSCg6ByPBoE8Ap3jqYxhBido5g0OgOGOGI4CsSpCCAcgcAuEosiYN5NHMOJ+D4TpTnSeQ7CEY4uBmBpPhgagdgcIZoHibIEyUBJZDQIJShoCgcCAcoyAQOYYlcZJ1D0DxDCiQgwEiAZMHEMJLFKPJ9D2DoDnidQ4k+Y5QmKEROBkIhKD0JIZDIS4TGUCQuEeEJjnOIg8CuY4RkYNgwGMM5RllGpThDRYIGKZIpCkJFUH0PINyWcQ3CaaZCG+HBnEOTJhD8Tx4GoeQ/GcaZSHOH5nCmQhshoZhihYYwhiYA4RlkNoNEMUZ3ByDjwEsPxOnMaJ9DuDR6F6GYmCmKh0nANtMioP4Gg8aoSiIO5NhodociqaY6GaFYkEyOg8lsNRNTaUgykyMgQG0GpPiONJbD8DpDEyfA6k0KwOkWMQsGsAJU0SagwkoJQJDIPISCQCJTGSUwyGaM4KkmMgtksHpFjAZ4TGCBAbgaSpcksdhNAMIJHHsD5TjSWWMAMOpwjyLwbk6cAz0KRJiDkDYzESCwiggcgcgYIQwCIEINCMCITj6TVxkMXp2j0cQLlCTo7E2F4ymkMZdhMPJHDGHpLAyVg+k4UwrCCSIyByDJ8DuDY8CiWY0kiXAXC6QJwFKGIjCeJpjgyezjlyDw6klHx5myRoMGwZwbkcToTEiew4kwbQfEmUgPkOKJUD4DpTHSHQmgkXI/ASTA1g0XIEDMTBimyfI7jSLYHEiUoPk0Fw/kadAsHGao8A0A5smEMJ2mNyg5gzJZwDgCpChyIZVyIZwFCMJEPASRkBqE+IcHInRcDxA2H4bIsx0AtDsIBpwZwYicD6BscwDwUBgHCIYaIfgtiVH2O4WgUwJjEFeAEQA7y4hMCiBMS4aRdB9A4CYE4LxljyBMHcDItBxinDCLcTYmgejBFQ9UTg9gFBOEmAQTI7A4iZGMGkQAWQ7jYA2HIL8BRAjDG4HcCwARbjZHiNoDw1nLDnGyNINQ+wjCpBMEgcovQUgICQJEcgWRuBvAyJ4d4ugpCUAINcHogxIgnDiM4N4axzD3F2JMTY/hRqYF6FsWIxhYAGGoAALQYgYirBwBEBwpAjBEAAIEIYsA2gOHCMAGgXAACIDmMITAUgFABH0D0I4WwvhNFGMAOIvxRD2GKNcMA8gjAPDCPwBogRPAxA8PgRwZRICYDED8RAXQEghEAN8DIgwIBdB4JYWwMgtiQHoFQKAiRFguFKGwGQhglDsEOVwEQQRkCKBwOIHgSREDRBYHEXQcQdD7GIGARQHRxipBrMobgewDCUCADsEYWAzgMHKHQDQxxsDzA6EMfAeQHB4GQDkUYPA0iECiKoGgRhcDdA2GMQA8AOCjDSPgHI4QnApAKBICwHg1A+BcAwcYsgbjGGQNkCIgRsA6EcBEWANADjsB0B8YYzQQDIGSBcEYZBCCPEkFIHQSgkgZAwG4IwBAbAYGGAgL4Ch4g8BOCQAA2KKC0GcAke4AAXAFCoHkDw4xbBFEcJkE4JRSiEFeJYKQVRMgJHODwX4xAgC/AsIIZAeAHDRG0HYI40RKCLEGDUI4jAghwBWIceA+whCpHMFYZYOQxglDMHMBQGxYj" + ;
"VHiAoBIPgfgHGwPsHYJRSB6A0IERQLhCjJHMA4OQoAoCOACLYGYSx8DpBQIMWQdRnDRH+DsE4fB3CeAmM67kAAXBFEIDYDI7wLBtEoEIfYNwjiUGGJQYQMAjCHEAO0C4zxW29CoCgfIxR9AKA6J8BgUAIhDGMIoJ40hqgwCgKETgnBhhqCGI0AIqgZhGDANQDIlBDCRGkCoJISR0g1BSKQOgfAzBRG0DYHARh4DeDAOwANuw8ApCKKkYg/RPhjBsH0J4yg5hPGWN0GwFBHQBFaDoQIURljFAoB4GgzRVzbBECQFQRQoguHGHANwDRdCKy8CgSIGwhhoDYJYYI1giBICSAEgI=") to Nothing
		Get ComAdd of hoAppearance 4 "gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHLUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBUrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsYYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVmWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVoWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiSe41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhFCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==" to Nothing
	Send Destroy to hoAppearance
	Set ComBackColorHeader to |CI$4c6c6c6
	Set ComSelBackColor to |CI$4000000
	Set ComSelForeColor to (RGB(0,0,1))
	Set ComBackground |CI$14 to (ComSelBackColor(Self))
	Set ComBackground |CI$15 to (ComSelForeColor(Self))
	Set ComBackground (|CI$8 + OLEexSplitBar) to (ComBackColor(Self))
	Set ComBackground (|CI$9 + OLEexSplitBar) to (ComForeColor(Self))
	Set ComBackground |CI$20 to -1
	Set ComBackground |CI$0 to |CI$4000000
	Set ComBackground OLEexHeaderFilterBarActive to |CI$4010101
	Set ComBackground |CI$1 to |CI$40000ff
	Set ComHeaderAppearance to OLEEtched
	Set ComBackColorSortBar to (ComBackColor(Self))
	Set ComBackColorLevelHeader to (ComBackColor(Self))
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\MN"
	Send ComEndUpdate
End_Procedure
78
ImageSize property on 16 (default) (specifies the size of control' icons/images/check-boxes/radio-buttons)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComEnsureVisibleColumn of hoView "Function"
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
	Get ComItem of hoColumns "Function" to Nothing		Send Destroy to hoColumns
		Send Destroy to hoView
		Variant voColumns1
		Get ComColumns to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn
			Get ComItem of hoColumns1 0 to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComDef of hoColumn OLEexCellHasCheckBox to true
			Send Destroy to hoColumn
		Send Destroy to hoColumns1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComImageSize to 16
	Send ComImages "gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOqdSqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVttmp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8acvQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtTGsbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgPnwD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg=="
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 4 "gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjHLUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKBUrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDsYYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoVmWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoVoWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZiSe41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbhFCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==" to Nothing
	Send Destroy to hoAppearance
	Set ComBackColorHeader to |CI$4c6c6c6
	Set ComSelBackColor to |CI$4000000
	Set ComSelForeColor to (RGB(0,0,1))
	Set ComBackground |CI$14 to (ComSelBackColor(Self))
	Set ComBackground |CI$15 to (ComSelForeColor(Self))
	Set ComBackground (|CI$8 + OLEexSplitBar) to (ComBackColor(Self))
	Set ComBackground (|CI$9 + OLEexSplitBar) to (ComForeColor(Self))
	Set ComBackground |CI$20 to -1
	Set ComBackground |CI$0 to |CI$4000000
	Set ComBackground OLEexHeaderFilterBarActive to |CI$4010101
	Set ComBackground |CI$1 to |CI$40000ff
	Set ComHeaderAppearance to OLEEtched
	Set ComBackColorSortBar to (ComBackColor(Self))
	Set ComBackColorLevelHeader to (ComBackColor(Self))
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\MN"
	Send ComEndUpdate
End_Procedure
77
Is it possible to highlight the column's header once a filter is applied

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 2 "gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgANJ0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8YNYuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4hhKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mgbhOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhWBMJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=" to Nothing
		Get ComAdd of hoAppearance 1 "CP:2 -8 -4 2 4" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground |CI$0 to |CI$1fefefe
	Set ComBackground OLEexHeaderFilterBarActive to |CI$1010101
	Set ComBackground |CI$20 to -1
	Set ComBackColorHeader to (RGB(255,255,255))
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComHeaderHeight of hoView to 28
		Set ComDrawGridLines of hoView to OLEexRowLines
		Set ComHeaderVisible of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComAdd of hoColumns "C1" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComDisplayFilterButton of hoColumn to True
			Send Destroy to hoColumn
			Variant voColumn1
			Get ComAdd of hoColumns "C2" to voColumn1
			Handle hoColumn1
			Get Create (RefClass(cComColumn)) to hoColumn1
			Set pvComObject of hoColumn1 to voColumn1
				Set ComDisplayFilterButton of hoColumn1 to True
				Set ComFilter of hoColumn1 to "Item 2"
				Set ComFilterType of hoColumn1 to OLEexFilter
			Send Destroy to hoColumn1
			Variant voColumn2
			Get ComAdd of hoColumns "C3" to voColumn2
			Handle hoColumn2
			Get Create (RefClass(cComColumn)) to hoColumn2
			Set pvComObject of hoColumn2 to voColumn2
				Set ComDisplayFilterButton of hoColumn2 to True
			Send Destroy to hoColumn2
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Variant h
			Get ComAddItem of hoItems "Item 1" to h
			Set ComCellValue of hoItems h 1 to "Item 2"
			Set ComCellValue of hoItems h 2 to "Item 3"
			Get ComAddItem of hoItems "Item 4" to h
			Set ComCellValue of hoItems h 1 to "Item 5"
			Set ComCellValue of hoItems h 2 to "Item 6"
		Send Destroy to hoItems
		Send ComApplyFilter of hoView
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
76
Is it possible to show the filterbar on top of the rows

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
		Set ComFilterBarPromptVisible of hoView to OLEexFilterBarTop
		Set ComHeaderHeight of hoView to 24
		Set ComFilterBarHeight of hoView to (ComHeaderHeight(hoView))
		Set ComHeaderAppearance of hoView to OLEFlat
		Set ComDrawGridLines of hoView to OLEexAllLines
		Set ComGridLineStyle of hoView to OLEexGridLinesGeometric
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComAdd of hoColumns "Column" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComDisplayFilterButton of hoColumn to True
				Set ComFilterType of hoColumn to OLEexPattern
				Set ComFilter of hoColumn to "B*"
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Variant voColumns1
		Get ComColumns of hoView to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn1
			Get ComAdd of hoColumns1 "Index" to voColumn1
			Handle hoColumn1
			Get Create (RefClass(cComColumn)) to hoColumn1
			Set pvComObject of hoColumn1 to voColumn1
				Set ComFormatColumn of hoColumn1 to "1 index ``"
				Set ComPosition of hoColumn1 to 0
				Set ComWidth of hoColumn1 to 48
				Set ComAllowSizing of hoColumn1 to False
				Set ComSortType of hoColumn1 to OLESortNumeric
				Set ComDef of hoColumn1 OLEexCellHasCheckBox to True
			Send Destroy to hoColumn1
		Send Destroy to hoColumns1
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Get ComAddItem of hoItems "A.1" to Nothing
			Get ComAddItem of hoItems "A.2" to Nothing
			Get ComAddItem of hoItems "B.1" to Nothing
			Get ComAddItem of hoItems "B.2" to Nothing
			Get ComAddItem of hoItems "B.3" to Nothing
			Get ComAddItem of hoItems "C" to Nothing
		Send Destroy to hoItems
		Send ComApplyFilter of hoView
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
75
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header (non-clickable)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant v
		Variant voView1
		Get ComParentView of hoView to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Get ComValue of hoView1 Nothing to v
		Send Destroy to hoView1
		Variant k
		Move v to k
		Send ComBeginUpdate of hoView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Get ComAdd of hoColumns k to Nothing
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Variant vValue
				Get ComFormatABC "A + `-> Sub-Item 1`" k Nothing Nothing to vValue
			Get ComAddItem of hoItems vValue to Nothing
			Variant vValue1
				Get ComFormatABC "A + `-> Sub-Item 2`" k Nothing Nothing to vValue1
			Get ComAddItem of hoItems vValue1 to Nothing
			Variant vValue2
				Get ComFormatABC "A + `-> Sub-Item 3`" k Nothing Nothing to vValue2
			Get ComAddItem of hoItems vValue2 to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Send ComBeginUpdate of hoView2
		Set ComColumnAutoResize of hoView2 to True
		Variant voColumns1
		Get ComColumns of hoView2 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn
			Get ComAdd of hoColumns1 "Default" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComAllowSort of hoColumn to False
				Set ComAllowDragging of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns1
		Set ComKey of hoView2 to 0
		Variant voItems1
		Get ComItems of hoView2 to voItems1
		Handle hoItems1
		Get Create (RefClass(cComItems)) to hoItems1
		Set pvComObject of hoItems1 to voItems1
			Get ComAddItem of hoItems1 "Item A" to Nothing
			Set ComSelectItem of hoItems1 (ComAddItem(hoItems1,"Item B")) to True
			Get ComAddItem of hoItems1 "Item C" to Nothing
		Send Destroy to hoItems1
		Send ComEndUpdate of hoView2
	Send Destroy to hoView2
	Send ComEndUpdate
End_Procedure
74
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant v
		Variant voView1
		Get ComParentView of hoView to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Get ComValue of hoView1 Nothing to v
		Send Destroy to hoView1
		Variant k
		Move v to k
		Send ComBeginUpdate of hoView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Get ComAdd of hoColumns k to Nothing
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Variant vValue
				Get ComFormatABC "A + `-> Sub-Item 1`" k Nothing Nothing to vValue
			Get ComAddItem of hoItems vValue to Nothing
			Variant vValue1
				Get ComFormatABC "A + `-> Sub-Item 2`" k Nothing Nothing to vValue1
			Get ComAddItem of hoItems vValue1 to Nothing
			Variant vValue2
				Get ComFormatABC "A + `-> Sub-Item 3`" k Nothing Nothing to vValue2
			Get ComAddItem of hoItems vValue2 to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackground |CI$20 to -1
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Send ComBeginUpdate of hoView2
		Set ComColumnAutoResize of hoView2 to True
		Variant voColumns1
		Get ComColumns of hoView2 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Get ComAdd of hoColumns1 "Default" to Nothing
		Send Destroy to hoColumns1
		Set ComKey of hoView2 to 0
		Variant voItems1
		Get ComItems of hoView2 to voItems1
		Handle hoItems1
		Get Create (RefClass(cComItems)) to hoItems1
		Set pvComObject of hoItems1 to voItems1
			Get ComAddItem of hoItems1 "Item A" to Nothing
			Set ComSelectItem of hoItems1 (ComAddItem(hoItems1,"Item B")) to True
			Get ComAddItem of hoItems1 "Item C" to Nothing
		Send Destroy to hoItems1
		Send ComEndUpdate of hoView2
	Send Destroy to hoView2
	Send ComEndUpdate
End_Procedure
73
Type of wraps the cell's caption support (Sample 2)

Procedure OnCreate
	Forward Send OnCreate
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Set ComHeaderSingleLine of hoView to False
		Set ComHeaderHeight of hoView to 36
		Set ComDrawGridLines of hoView to OLEexRowLines
		Set ComColumnAutoResize of hoView to False
		Set ComScrollBySingleLine of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComAdd of hoColumns "Single-Line (exCaptionSingleLine)" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComWidth of hoColumn to 96
				Set ComDef of hoColumn OLEexCellValueFormat to 1
				Set ComDef of hoColumn OLEexCellSingleLine to -1
			Send Destroy to hoColumn
			Variant voColumn1
			Get ComAdd of hoColumns "Word-Wrap (exCaptionWordWrap)" to voColumn1
			Handle hoColumn1
			Get Create (RefClass(cComColumn)) to hoColumn1
			Set pvComObject of hoColumn1 to voColumn1
				Set ComWidth of hoColumn1 to 96
				Set ComDef of hoColumn1 OLEexCellValueFormat to 1
				Set ComDef of hoColumn1 OLEexCellSingleLine to 0
				Set ComFormatColumn of hoColumn1 to "%0"
			Send Destroy to hoColumn1
			Variant voColumn2
			Get ComAdd of hoColumns "Break-Wrap (exCaptionBreakWrap)" to voColumn2
			Handle hoColumn2
			Get Create (RefClass(cComColumn)) to hoColumn2
			Set pvComObject of hoColumn2 to voColumn2
				Set ComWidth of hoColumn2 to 96
				Set ComDef of hoColumn2 OLEexCellValueFormat to 1
				Set ComDef of hoColumn2 OLEexCellSingleLine to 1
				Set ComFormatColumn of hoColumn2 to "%0"
			Send Destroy to hoColumn2
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Get ComAddItem of hoItems "This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line." to Nothing
			Get ComAddItem of hoItems "This is the <b>first</b> line.\r\nThis is the <b>second</b> line.\r\nThis is the <b>third</b> line." to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure
72
Type of wraps the cell's caption support (Sample 1)

Procedure OnCreate
	Forward Send OnCreate
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Set ComHeaderSingleLine of hoView to False
		Set ComHeaderHeight of hoView to 36
		Set ComDrawGridLines of hoView to OLEexRowLines
		Set ComColumnAutoResize of hoView to False
		Set ComScrollBySingleLine of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComAdd of hoColumns "Default" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComWidth of hoColumn to 128
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Variant h
			Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to h
			Get ComAddItem of hoItems "This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line." to h
			Set ComCellValueFormat of hoItems h 0 to OLEexHTML
			Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to h
			Set ComCellSingleLine of hoItems h 0 to OLEexCaptionWordWrap
			Get ComAddItem of hoItems "This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line." to h
			Set ComCellValueFormat of hoItems h 0 to OLEexHTML
			Set ComCellSingleLine of hoItems h 0 to OLEexCaptionWordWrap
			Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to h
			Set ComCellSingleLine of hoItems h 0 to OLEexCaptionBreakWrap
			Get ComAddItem of hoItems "This is the <b>first</b> line.<br>This is the <b>second</b> line.<br>This is the <b>third</b> line." to h
			Set ComCellValueFormat of hoItems h 0 to OLEexHTML
			Set ComCellSingleLine of hoItems h 0 to OLEexCaptionBreakWrap
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure
71
Can I break the cell's caption using the line break <br> or \r\n (Sample 2)

Procedure OnCreate
	Forward Send OnCreate
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Set ComDrawGridLines of hoView to OLEexRowLines
		Set ComColumnAutoResize of hoView to False
		Set ComScrollBySingleLine of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComAdd of hoColumns "Default" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComWidth of hoColumn to 128
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Set ComCellSingleLine of hoItems (ComAddItem(hoItems,"This is the first line.\r\nThis is the second line.\r\nThis is the third line.")) 0 to OLEexCaptionBreakWrap
			Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure
70
Can I break the cell's caption using the line break <br> or \r\n (Sample 1)

Procedure OnCreate
	Forward Send OnCreate
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Set ComDrawGridLines of hoView to OLEexRowLines
		Set ComColumnAutoResize of hoView to False
		Set ComScrollBySingleLine of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComAdd of hoColumns "Default" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComWidth of hoColumn to 128
				Set ComDef of hoColumn OLEexCellSingleLine to 1
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to Nothing
			Get ComAddItem of hoItems "This is the first line.\r\nThis is the second line.\r\nThis is the third line." to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure
69
Is it possible to change the visual appearance of the position signs when user changes the column's position by drag and drop

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVIUcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4aDhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBeEMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIBICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokGKHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=" to Nothing
		Get ComAdd of hoAppearance 2 "CP:1 0 -36 0 0" to Nothing
	Send Destroy to hoAppearance
	Set ComBackground OLEexColumnsPositionSign to |CI$2000000
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Set ComHeaderAppearance of hoView to OLEEtched
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Get ComAdd of hoColumns "Column 1" to Nothing
			Get ComAdd of hoColumns "Column 2" to Nothing
			Get ComAdd of hoColumns "Column 3" to Nothing
		Send Destroy to hoColumns
		Send ComEndUpdate of hoView
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
68
DataSource (control, ADODB, ACCDB, x64)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant bSingle
	Variant vA
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Get ComIndex of hoView to vA
	Send Destroy to hoView
	Get ComFormatABC "value > 0 ?  0 : -1" vA Nothing Nothing to bSingle
	Variant bColumnAutoResize
	Variant vA1
	Variant voView1
	Get ComView to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Get ComTag of hoView1 to vA1
	Send Destroy to hoView1
	Get ComFormatABC "value = `City` ?  0 : -1" vA1 Nothing Nothing to bColumnAutoResize
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Set ComColumnAutoResize of hoView2 to bColumnAutoResize
		Set ComSingleSel of hoView2 to bSingle
	Send Destroy to hoView2
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to (OLEexAutoFitOnResizeClient + OLEexSplitFixCascadeMode)
	Set ComDataSource to "locktype=1;Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
67
DataSource (view, ADODB, ACCDB, x64)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be string (Source/Member), ADO or DAO objects"
	Set ComDefColumnWidth to 336
	Variant ado
	Get Comcreateobject "ADODB.Recordset" to ado
		Send ComOpen "Countries" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" OLEadOpenStatic OLEadLockReadOnly -1
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComDataSource of hoView to ado
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
66
Simple sample

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant bSingle
	Variant vA
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Get ComIndex of hoView to vA
	Send Destroy to hoView
	Get ComFormatABC "value > 0 ?  0 : -1" vA Nothing Nothing to bSingle
	Variant bColumnAutoResize
	Variant vA1
	Variant voView1
	Get ComView to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Get ComTag of hoView1 to vA1
	Send Destroy to hoView1
	Get ComFormatABC "value = `City` ?  0 : -1" vA1 Nothing Nothing to bColumnAutoResize
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Set ComColumnAutoResize of hoView2 to bColumnAutoResize
		Set ComSingleSel of hoView2 to bSingle
	Send Destroy to hoView2
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to (OLEexAutoFitOnResizeClient + OLEexSplitFixCascadeMode)
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Send ComEndUpdate
End_Procedure
65
FilterBar sample

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComHeaderHeight of hoView to 20
		Set ComHeaderAppearance of hoView to OLEEtched
		Set ComDrawGridLines of hoView to OLEexAllLines
		Set ComGridLineStyle of hoView to OLEexGridLinesDash
	Send Destroy to hoView
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "Country" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Send ComBeginUpdate of hoView2
			Set ComColumnAutoResize of hoView2 to True
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 1 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComHTMLCaption of hoColumn1 to "Country"
					Set ComDisplayFilterButton of hoColumn1 to True
					Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn1 to 2
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Send ComEndUpdate of hoView2
		Send Destroy to hoView2
		Variant voView3
		Get ComView of hoView1 "State" to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Send ComBeginUpdate of hoView3
			Set ComColumnAutoResize of hoView3 to True
			Variant voColumns2
			Get ComColumns of hoView3 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 0 to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComVisible of hoColumn2 to False
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Variant voColumns3
			Get ComColumns of hoView3 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 1 to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Set ComVisible of hoColumn3 to False
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Variant voColumns4
			Get ComColumns of hoView3 to voColumns4
			Handle hoColumns4
			Get Create (RefClass(cComColumns)) to hoColumns4
			Set pvComObject of hoColumns4 to voColumns4
				Variant voColumn4
				Get ComItem of hoColumns4 2 to voColumn4
				Handle hoColumn4
				Get Create (RefClass(cComColumn)) to hoColumn4
				Set pvComObject of hoColumn4 to voColumn4
					Set ComHTMLCaption of hoColumn4 to "State"
					Set ComDisplayFilterButton of hoColumn4 to True
					Set ComFilterList of hoColumn4 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn4 to 2
				Send Destroy to hoColumn4
			Send Destroy to hoColumns4
			Send ComEndUpdate of hoView3
		Send Destroy to hoView3
		Variant voView4
		Get ComView of hoView1 "City" to voView4
		Handle hoView4
		Get Create (RefClass(cComView)) to hoView4
		Set pvComObject of hoView4 to voView4
			Send ComBeginUpdate of hoView4
			Variant voColumns5
			Get ComColumns of hoView4 to voColumns5
			Handle hoColumns5
			Get Create (RefClass(cComColumns)) to hoColumns5
			Set pvComObject of hoColumns5 to voColumns5
				Variant voColumn5
				Get ComItem of hoColumns5 "CountryCode" to voColumn5
				Handle hoColumn5
				Get Create (RefClass(cComColumn)) to hoColumn5
				Set pvComObject of hoColumn5 to voColumn5
					Set ComVisible of hoColumn5 to False
				Send Destroy to hoColumn5
			Send Destroy to hoColumns5
			Variant voColumns6
			Get ComColumns of hoView4 to voColumns6
			Handle hoColumns6
			Get Create (RefClass(cComColumns)) to hoColumns6
			Set pvComObject of hoColumns6 to voColumns6
				Variant voColumn6
				Get ComItem of hoColumns6 "StateCode" to voColumn6
				Handle hoColumn6
				Get Create (RefClass(cComColumn)) to hoColumn6
				Set pvComObject of hoColumn6 to voColumn6
					Set ComVisible of hoColumn6 to False
				Send Destroy to hoColumn6
			Send Destroy to hoColumns6
			Variant voColumns7
			Get ComColumns of hoView4 to voColumns7
			Handle hoColumns7
			Get Create (RefClass(cComColumns)) to hoColumns7
			Set pvComObject of hoColumns7 to voColumns7
				Variant voColumn7
				Get ComItem of hoColumns7 "Name" to voColumn7
				Handle hoColumn7
				Get Create (RefClass(cComColumn)) to hoColumn7
				Set pvComObject of hoColumn7 to voColumn7
					Set ComHTMLCaption of hoColumn7 to "City"
					Set ComWidth of hoColumn7 to 128
					Set ComDisplayFilterButton of hoColumn7 to True
					Set ComFilterList of hoColumn7 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn7 to 2
				Send Destroy to hoColumn7
			Send Destroy to hoColumns7
			Variant v
			Variant voColumns8
			Get ComColumns of hoView4 to voColumns8
			Handle hoColumns8
			Get Create (RefClass(cComColumns)) to hoColumns8
			Set pvComObject of hoColumns8 to voColumns8
				Variant voColumn8
				Get ComItem of hoColumns8 "Name" to voColumn8
				Handle hoColumn8
				Get Create (RefClass(cComColumn)) to hoColumn8
				Set pvComObject of hoColumn8 to voColumn8
					Get ComIndex of hoColumn8 to v
				Send Destroy to hoColumn8
			Send Destroy to hoColumns8
			Set ComSearchColumnIndex of hoView4 to v
			Variant voColumns9
			Get ComColumns of hoView4 to voColumns9
			Handle hoColumns9
			Get Create (RefClass(cComColumns)) to hoColumns9
			Set pvComObject of hoColumns9 to voColumns9
				Variant voColumn9
				Get ComItem of hoColumns9 "Status" to voColumn9
				Handle hoColumn9
				Get Create (RefClass(cComColumn)) to hoColumn9
				Set pvComObject of hoColumn9 to voColumn9
					Set ComDisplayFilterButton of hoColumn9 to True
					Set ComFilterList of hoColumn9 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn9 to 2
				Send Destroy to hoColumn9
			Send Destroy to hoColumns9
			Variant voColumns10
			Get ComColumns of hoView4 to voColumns10
			Handle hoColumns10
			Get Create (RefClass(cComColumns)) to hoColumns10
			Set pvComObject of hoColumns10 to voColumns10
				Variant voColumn10
				Get ComItem of hoColumns10 "Function" to voColumn10
				Handle hoColumn10
				Get Create (RefClass(cComColumn)) to hoColumn10
				Set pvComObject of hoColumn10 to voColumn10
					Set ComDef of hoColumn10 OLEexCellValueFormat to 1
					Set ComFormatColumn of hoColumn10 to "value replace 1 with `<img>1</img>` replace 2 with `<img>2</img>` replace 3 with `<img>3</img>` replace 4 with `<img>4</img>` replace 5 with `<img>5</img>` replace 6 with `<img>6</img>` replace 7 with `<img>7</img>` replace 8 with `<img>8</img>` replace 9 with `<img>9</img>` replace `-` with `` "
				Send Destroy to hoColumn10
			Send Destroy to hoColumns10
			Variant voColumns11
			Get ComColumns of hoView4 to voColumns11
			Handle hoColumns11
			Get Create (RefClass(cComColumns)) to hoColumns11
			Set pvComObject of hoColumns11 to voColumns11
				Variant voColumn11
				Get ComAdd of hoColumns11 "Pos" to voColumn11
				Handle hoColumn11
				Get Create (RefClass(cComColumn)) to hoColumn11
				Set pvComObject of hoColumn11 to voColumn11
					Set ComAllowSizing of hoColumn11 to False
					Set ComWidth of hoColumn11 to 32
					Set ComDef of hoColumn11 OLEexCellBackColor to 15790320
					Set ComPosition of hoColumn11 to 0
					Set ComFormatColumn of hoColumn11 to "1 pos ``"
					Set ComAlignment of hoColumn11 to OLECenterAlignment
					Set ComHeaderAlignment of hoColumn11 to (ComAlignment(hoColumn11))
				Send Destroy to hoColumn11
			Send Destroy to hoColumns11
			Set ComCountLockedColumns of hoView4 to 1
			Set ComWidth of hoView4 to (ComWidthToFit(hoView4))
			Send ComEndUpdate of hoView4
		Send Destroy to hoView4
	Send Destroy to hoView1
	Variant voView5
	Get ComView to voView5
	Handle hoView5
	Get Create (RefClass(cComView)) to hoView5
	Set pvComObject of hoView5 to voView5
		Set ComFilterBarHeight of hoView5 to 36
		Set ComFilterBarCaption of hoView5 to "(( ( 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)`) )))"
		Set ComFilterBarPromptVisible of hoView5 to (OLEexFilterBarShowCloseIfRequired + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Send Destroy to hoView5
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-01.ico"
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-02.ico"
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-03.ico"
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-04.ico"
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-05.ico"
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-06.ico"
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-07.ico"
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-08.ico"
	Send ComImages "C:\Program Files\Exontrol\ExCascadeTree\Sample\Bullets\Bullet-09.ico"
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "RO\CJ"
	Variant voView6
	Get ComDefaultView Nothing to voView6
	Handle hoView6
	Get Create (RefClass(cComView)) to hoView6
	Set pvComObject of hoView6 to voView6
		Variant voView7
		Get ComView of hoView6 "City" to voView7
		Handle hoView7
		Get Create (RefClass(cComView)) to hoView7
		Set pvComObject of hoView7 to voView7
			Set ComFilterBarPromptPattern of hoView7 to "Tu"
		Send Destroy to hoView7
	Send Destroy to hoView6
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABZEGACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADKMA4SOKIZhrE4bBhGaQRUgyI43RhHUBzVIUcQvE6TZRHCQYHgkNIhDJIM7TPLkeSVJaTIRoKhJUogApQThTMgVRDEThkGoSa6soSoYTDBKybLrSLKagOT5YUDKUqSdKEZRpEq1YztWbaQoCUoqVRRVIWfbNd4JJa4aDhWpYdpeeY5R7bWLgBYVVABL7LLRsSxpHxPF6RXxaeI3GKsaS8G6ic6nPQMHj7I4NS5pUa6Rh2VYNSa8AAtETRYznOw4bTMXAjNIea5bAYIIR5HIoDzVbQcCQAHL9DBeEMIQEEISgGhMGZQmocgymoYRRCIEQ0G2HYBnEIBig4V4zCQGINnmagCECY43medZ6H2Pw/g+X5fnueh/h+R5+AKABfkMWgGgGYA4AICoCGCE5WA4CphACMgSD2IRIDIBICmEd5YGCBpRjGBgegWIYIgWdgoGIRQsiKCZiAiJZ0gGQI4jUS4LECOAiBmDJflGfg2BSY4Al4OhGkOCJ2DgFJjGGfgqgiH5Ch4RhGkqOQmEOEpkFkHQYhJRYyESAokGKHhIhKIxJEmf4VGUeRGFmF5iBkchPhYJQ5GoYIZg6Ug6GoFYmkmNhuhulRGHKGoImefh0BUZ4JmYeoemeSZ2H6HQmgoBgXDqXwUAQgI=" to Nothing
		Get ComAdd of hoAppearance 2 "gBFLBCJwBAEHhEJAAEhABHQDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMZhXDOCYXABCEYRXBIZQ7BKNIxjSJ5BhIAAyDSJMjSRJUEhqGCWYDleYYYAKHIMQLOg7IJjyI4/SJAYCydKAWhxIaZKJHCZoEDaTAADCNVAQp6MEIJVbVEI0e79OgBLp/Z7kECIJJAaRjHQdJxGLA8EhtCQhCZteK6SgMKJYXhWQYRXI1JwvMBrWrdQjiOYELQtMKmSZNLYGG4dR5SVJbcYhSYsRRFMoyDIOXYDLKsdYqSpXIThObEGgaPqJYjsUjCMKnR7HVIURrBPC9TBPE69ZgmC6ucKPX51ShKFaBWDZcwFAS+UBuYCAILiEAQGZ1XT8OROicbgJgSTJRlCaZeDsHY7QGR4xkSYp3CaExZAQMgalQYAwjCAAfBANxcA2TgKAUOpDCGFhKg0RpXCwCwDHQHQHEyAIkCkOhbFOGA8A8DohBgRg9AccZcn8EpEjMLI2C2DYxAgQgvAIUIVkoAAPBQDJlECTZ3CCYwDACQwUA8A5MCAWAWDiQi4l8aQOEgLJuBgBgDmYFAzEoIoIl0WALgKYJbBABADAAHgHg8VAMmqCQQDMXABAATYwTmNwBDATJXAiAgjHmNQ5lgQ5QEQEQMmcWg/GwD5ylyNw2gMcJcjsBgBgOQQDDhRpVAMMwnDBFw1B0Ax8D0DxOmmJJIGQTY5hGMAwkwM4CAYLZAmAOJnAqAojiIGg6iieYkmeAYOHaKJDCyCwjH6AoggsQpQliAJLhgaJ0CESBTnyDwjk+cg4g4P5IHIHJ+BWRRzlYWAxiOUxihsY4KjKLJRGqC44FCegkkkM58iAKAPnIWIWD8SRSFSfQnkmewUhYP4GiGKJ7G0TIbCSUoggqUo0lAQ4LnEcBcD8Coiiif4nE+eAAn2HpOkcFJqi4T5SkyMw/kqQown8IBIBOdA+A+DJrBqVxXEqYo4lCApLhGHBnD8S4ymyfxmg+cwQkQP5egOUZIWoEAkjIeIPBMBJBD+TBjBifwvkuc58hQJQPmFrYykkchclSApKjGOBuD+TRDFCfw3mmIxNi8FxFlOXhVC4aYDFyPgvg2YBcBcLZGCGCJ0DSLRzGSWQ/lmY5+mEP5gmMDBZRSMRsFsOxMhMJJ/DsTpTnwaQaE+N5ojuNhdEYNI5C4TZJO1GRDmCaxnA2Yx4n8IpIjOTBQBQC5TgyYw7gUYRYikC0BYRwsDQBoB8eA6Q2hsE0BUXgywZtYCyHMKwnxSAhAQHkIQhRrBaDsCwA4ERiB2EWAIYIXhhiVEgAEUYwwYjyASLge4FhHgRDkM8OQih0jWPkGgBBAQ" to Nothing
	Send Destroy to hoAppearance
	Set ComBackColorSortBar to (ComBackColor(Self))
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(4,0,0))
	Set ComBackground |CI$0 to |CI$1000000
	Set ComBackground |CI$1 to |CI$2000000
	Set ComBackground |CI$20 to -1
	Send ComEndUpdate
End_Procedure
64
GroupBy sample

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComHeaderHeight of hoView to 24
	Send Destroy to hoView
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "State" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Send ComBeginUpdate of hoView2
			Set ComSingleSel of hoView2 to False
			Set ComColumnAutoResize of hoView2 to True
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 1 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComVisible of hoColumn1 to False
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Variant voColumns2
			Get ComColumns of hoView2 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 2 to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComHTMLCaption of hoColumn2 to "State <off 4><fgcolor=808080>Name"
					Set ComSortOrder of hoColumn2 to OLESortAscending
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Send ComEndUpdate of hoView2
		Send Destroy to hoView2
		Variant voView3
		Get ComView of hoView1 "City" to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Variant v
			Variant voView4
			Get ComParentView of hoView3 to voView4
			Handle hoView4
			Get Create (RefClass(cComView)) to hoView4
			Set pvComObject of hoView4 to voView4
				Variant voItems
				Get ComItems of hoView4 to voItems
				Handle hoItems
				Get Create (RefClass(cComItems)) to hoItems
				Set pvComObject of hoItems to voItems
					Get ComSelectCount of hoItems to v
				Send Destroy to hoItems
			Send Destroy to hoView4
			Variant nSelected
			Move v to nSelected
			Variant v1
				Get ComFormatABC "value > 1 ? -1 : 0" nSelected Nothing Nothing to v1
			Variant bGroupBy
			Move v1 to bGroupBy
			Send ComBeginUpdate of hoView3
			Set ComSingleSel of hoView3 to False
			Set ComSortBarCaption of hoView3 to "Drag a <b>column</b> header here to group by that column."
			Set ComHasLines of hoView3 to OLEexSolidLine
			Set ComColumnAutoResize of hoView3 to False
			Set ComDrawGridLines of hoView3 to OLEexVLines
			Set ComGridLineStyle of hoView3 to OLEexGridLinesVSolid
			Variant voColumns3
			Get ComColumns of hoView3 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 "CountryCode" to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Set ComVisible of hoColumn3 to False
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Variant voColumns4
			Get ComColumns of hoView3 to voColumns4
			Handle hoColumns4
			Get Create (RefClass(cComColumns)) to hoColumns4
			Set pvComObject of hoColumns4 to voColumns4
				Variant voColumn4
				Get ComItem of hoColumns4 "Name" to voColumn4
				Handle hoColumn4
				Get Create (RefClass(cComColumn)) to hoColumn4
				Set pvComObject of hoColumn4 to voColumn4
					Set ComHTMLCaption of hoColumn4 to "City <off 4><fgcolor=808080>Name"
					Set ComWidth of hoColumn4 to 128
					Set ComSortOrder of hoColumn4 to OLESortAscending
				Send Destroy to hoColumn4
			Send Destroy to hoColumns4
			Set ComSearchColumnIndex of hoView3 to 2
			Set ComTreeColumnIndex of hoView3 to (ComSearchColumnIndex(hoView3))
			Set ComSingleSort of hoView3 to False
			Set ComAllowGroupBy of hoView3 to bGroupBy
			Set ComSortBarVisible of hoView3 to bGroupBy
			Variant voColumns5
			Get ComColumns of hoView3 to voColumns5
			Handle hoColumns5
			Get Create (RefClass(cComColumns)) to hoColumns5
			Set pvComObject of hoColumns5 to voColumns5
				Variant voColumn5
				Get ComItem of hoColumns5 "StateCode" to voColumn5
				Handle hoColumn5
				Get Create (RefClass(cComColumn)) to hoColumn5
				Set pvComObject of hoColumn5 to voColumn5
					Set ComVisible of hoColumn5 to bGroupBy
					Set ComSortOrder of hoColumn5 to OLESortAscending
				Send Destroy to hoColumn5
			Send Destroy to hoColumns5
			Set ComWidth of hoView3 to (ComWidthToFit(hoView3))
			Send ComEndUpdate of hoView3
		Send Destroy to hoView3
	Send Destroy to hoView1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "C:\Program Files\Exontrol\ExCascadeTree\Sample\EBN\Assorted\vistaselDark.ebn" to Nothing
		Get ComAdd of hoAppearance 2 "C:\Program Files\Exontrol\ExCascadeTree\Sample\EBN\Assorted\bhframe.ebn" to Nothing
	Send Destroy to hoAppearance
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "RO\CJ|BV|GL|IL"
	Variant voView5
	Get ComDefaultView Nothing to voView5
	Handle hoView5
	Get Create (RefClass(cComView)) to hoView5
	Set pvComObject of hoView5 to voView5
		Variant voView6
		Get ComView of hoView5 "Country" to voView6
		Handle hoView6
		Get Create (RefClass(cComView)) to hoView6
		Set pvComObject of hoView6 to voView6
			Send ComBeginUpdate of hoView6
			Set ComColumnAutoResize of hoView6 to True
			Variant voColumns6
			Get ComColumns of hoView6 to voColumns6
			Handle hoColumns6
			Get Create (RefClass(cComColumns)) to hoColumns6
			Set pvComObject of hoColumns6 to voColumns6
				Variant voColumn6
				Get ComItem of hoColumns6 0 to voColumn6
				Handle hoColumn6
				Get Create (RefClass(cComColumn)) to hoColumn6
				Set pvComObject of hoColumn6 to voColumn6
					Set ComVisible of hoColumn6 to False
				Send Destroy to hoColumn6
			Send Destroy to hoColumns6
			Variant voColumns7
			Get ComColumns of hoView6 to voColumns7
			Handle hoColumns7
			Get Create (RefClass(cComColumns)) to hoColumns7
			Set pvComObject of hoColumns7 to voColumns7
				Variant voColumn7
				Get ComItem of hoColumns7 1 to voColumn7
				Handle hoColumn7
				Get Create (RefClass(cComColumn)) to hoColumn7
				Set pvComObject of hoColumn7 to voColumn7
					Set ComHTMLCaption of hoColumn7 to "Country <off 4><fgcolor=808080>Name"
					Set ComSortOrder of hoColumn7 to OLESortAscending
				Send Destroy to hoColumn7
			Send Destroy to hoColumns7
			Send ComEndUpdate of hoView6
		Send Destroy to hoView6
	Send Destroy to hoView5
	Set ComSelBackColor to |CI$1000000
	Set ComSelForeColor to (RGB(255,255,255))
	Set ComBackColorHeader to |CI$2000000
	Set ComBackColorSortBar to (ComBackColor(Self))
	Set ComBackColorSortBarCaption to (ComBackColor(Self))
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(4,0,0))
	Set ComBackColorSortBar to (ComBackColor(Self))
	Send ComEndUpdate
End_Procedure
63
Manual sample

// A view has been created.
Procedure OnComCreateView Variant   llV
	Forward Send OnComCreateView llV
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Variant v
		Variant voView1
		Get ComParentView of hoView to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Get ComValue of hoView1 Nothing to v
		Send Destroy to hoView1
		Variant k
		Move v to k
		Set ComHeaderVisible of hoView to False
		Set ComColumnAutoResize of hoView to True
		Set ComScrollBySingleLine of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComAdd of hoColumns "Default" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComDef of hoColumn OLEexCellSingleLine to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Set ComKey of hoView to 0
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Variant vValue
				Get ComFormatABC "A + `.Child 1`" k Nothing Nothing to vValue
			Get ComAddItem of hoItems vValue to Nothing
			Variant vValue1
				Get ComFormatABC "A + `.Child 2`" k Nothing Nothing to vValue1
			Get ComAddItem of hoItems vValue1 to Nothing
			Variant vValue2
				Get ComFormatABC "A + `.Child 3`" k Nothing Nothing to vValue2
			Get ComAddItem of hoItems vValue2 to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackColorAlternate to |CI$7ff0f0f0
	Set ComBackground OLEexSplitBar to (RGB(240,240,240))
	Variant voView2
	Get ComDefaultView Nothing to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Send ComBeginUpdate of hoView2
		Set ComHeaderVisible of hoView2 to False
		Set ComColumnAutoResize of hoView2 to True
		Set ComScrollBySingleLine of hoView2 to True
		Variant voColumns1
		Get ComColumns of hoView2 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn1
			Get ComAdd of hoColumns1 "Default" to voColumn1
			Handle hoColumn1
			Get Create (RefClass(cComColumn)) to hoColumn1
			Set pvComObject of hoColumn1 to voColumn1
				Set ComDef of hoColumn1 OLEexCellSingleLine to False
			Send Destroy to hoColumn1
		Send Destroy to hoColumns1
		Set ComKey of hoView2 to 0
		Variant voItems1
		Get ComItems of hoView2 to voItems1
		Handle hoItems1
		Get Create (RefClass(cComItems)) to hoItems1
		Set pvComObject of hoItems1 to voItems1
			Get ComAddItem of hoItems1 "Item A" to Nothing
			Get ComAddItem of hoItems1 "Item B" to Nothing
			Get ComAddItem of hoItems1 "Item C" to Nothing
		Send Destroy to hoItems1
		Send ComEndUpdate of hoView2
	Send Destroy to hoView2
	Set ComSelect to "Item A\Item*A*2\Item*A*2*3\"
	Send ComEndUpdate
End_Procedure
62
Appearance sample

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComHeaderHeight of hoView to 24
	Send Destroy to hoView
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "State" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Send ComBeginUpdate of hoView2
			Set ComColumnAutoResize of hoView2 to True
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 1 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComVisible of hoColumn1 to False
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Variant voColumns2
			Get ComColumns of hoView2 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 2 to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComHTMLCaption of hoColumn2 to "State <off 4><fgcolor=808080>Name"
					Set ComSortOrder of hoColumn2 to OLESortAscending
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Variant voItems
			Get ComItems of hoView2 to voItems
			Handle hoItems
			Get Create (RefClass(cComItems)) to hoItems
			Set pvComObject of hoItems to voItems
				Set ComLockedItemCount of hoItems OLEexTop to 1
				Variant h
				Get ComLockedItem of hoItems OLEexTop 0 to h
				Set ComItemDivider of hoItems h to 0
				Set ComCellValueFormat of hoItems h 0 to (OLEexTotalField + OLEexHTML)
				Set ComCellValue of hoItems h 0 to "count(all,all,1)"
				Set ComFormatCell of hoItems h 0 to "`<r>States: <b>`+ (value format `0`)"
			Send Destroy to hoItems
			Send ComEndUpdate of hoView2
		Send Destroy to hoView2
		Variant voView3
		Get ComView of hoView1 "City" to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Send ComBeginUpdate of hoView3
			Set ComSingleSel of hoView3 to False
			Set ComColumnAutoResize of hoView3 to False
			Set ComDrawGridLines of hoView3 to OLEexVLines
			Set ComGridLineStyle of hoView3 to OLEexGridLinesVSolid
			Variant voColumns3
			Get ComColumns of hoView3 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 0 to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Set ComVisible of hoColumn3 to False
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Variant voColumns4
			Get ComColumns of hoView3 to voColumns4
			Handle hoColumns4
			Get Create (RefClass(cComColumns)) to hoColumns4
			Set pvComObject of hoColumns4 to voColumns4
				Variant voColumn4
				Get ComItem of hoColumns4 1 to voColumn4
				Handle hoColumn4
				Get Create (RefClass(cComColumn)) to hoColumn4
				Set pvComObject of hoColumn4 to voColumn4
					Set ComVisible of hoColumn4 to False
				Send Destroy to hoColumn4
			Send Destroy to hoColumns4
			Variant voColumns5
			Get ComColumns of hoView3 to voColumns5
			Handle hoColumns5
			Get Create (RefClass(cComColumns)) to hoColumns5
			Set pvComObject of hoColumns5 to voColumns5
				Variant voColumn5
				Get ComItem of hoColumns5 2 to voColumn5
				Handle hoColumn5
				Get Create (RefClass(cComColumn)) to hoColumn5
				Set pvComObject of hoColumn5 to voColumn5
					Set ComHTMLCaption of hoColumn5 to "City <off 4><fgcolor=808080>Name"
					Set ComWidth of hoColumn5 to 128
					Set ComDef of hoColumn5 OLEexCellHasCheckBox to True
					Set ComSortOrder of hoColumn5 to OLESortAscending
				Send Destroy to hoColumn5
			Send Destroy to hoColumns5
			Set ComSearchColumnIndex of hoView3 to 2
			Variant voConditionalFormats
			Get ComConditionalFormats of hoView3 to voConditionalFormats
			Handle hoConditionalFormats
			Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
			Set pvComObject of hoConditionalFormats to voConditionalFormats
				Variant voConditionalFormat
				Get ComAdd of hoConditionalFormats "%CS2 = 1" Nothing to voConditionalFormat
				Handle hoConditionalFormat
				Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
				Set pvComObject of hoConditionalFormat to voConditionalFormat
					Set ComBold of hoConditionalFormat to True
				Send Destroy to hoConditionalFormat
			Send Destroy to hoConditionalFormats
			Variant voItems1
			Get ComItems of hoView3 to voItems1
			Handle hoItems1
			Get Create (RefClass(cComItems)) to hoItems1
			Set pvComObject of hoItems1 to voItems1
				Set ComLockedItemCount of hoItems1 OLEexTop to 1
				Get ComLockedItem of hoItems1 OLEexTop 0 to h
				Set ComItemDivider of hoItems1 h to 0
				Set ComCellValueFormat of hoItems1 h 0 to (OLEexTotalField + OLEexHTML)
				Set ComCellValue of hoItems1 h 0 to "count(all,all,1)"
				Set ComFormatCell of hoItems1 h 0 to "`<r>Cities: <b>`+ (value format `0`)"
			Send Destroy to hoItems1
			Set ComWidth of hoView3 to (ComWidthToFit(hoView3))
			Send ComEndUpdate of hoView3
		Send Destroy to hoView3
	Send Destroy to hoView1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "C:\Program Files\Exontrol\ExCascadeTree\Sample\EBN\MSOffice-Ribbon\msor_select.ebn" to Nothing
		Get ComAdd of hoAppearance 2 "C:\Program Files\Exontrol\ExCascadeTree\Sample\EBN\MSOffice-Ribbon\msor_background.ebn" to Nothing
	Send Destroy to hoAppearance
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView4
	Get ComDefaultView Nothing to voView4
	Handle hoView4
	Get Create (RefClass(cComView)) to hoView4
	Set pvComObject of hoView4 to voView4
		Variant voView5
		Get ComView of hoView4 "Country" to voView5
		Handle hoView5
		Get Create (RefClass(cComView)) to hoView5
		Set pvComObject of hoView5 to voView5
			Send ComBeginUpdate of hoView5
			Set ComColumnAutoResize of hoView5 to True
			Variant voColumns6
			Get ComColumns of hoView5 to voColumns6
			Handle hoColumns6
			Get Create (RefClass(cComColumns)) to hoColumns6
			Set pvComObject of hoColumns6 to voColumns6
				Variant voColumn6
				Get ComItem of hoColumns6 0 to voColumn6
				Handle hoColumn6
				Get Create (RefClass(cComColumn)) to hoColumn6
				Set pvComObject of hoColumn6 to voColumn6
					Set ComVisible of hoColumn6 to False
				Send Destroy to hoColumn6
			Send Destroy to hoColumns6
			Variant voColumns7
			Get ComColumns of hoView5 to voColumns7
			Handle hoColumns7
			Get Create (RefClass(cComColumns)) to hoColumns7
			Set pvComObject of hoColumns7 to voColumns7
				Variant voColumn7
				Get ComItem of hoColumns7 1 to voColumn7
				Handle hoColumn7
				Get Create (RefClass(cComColumn)) to hoColumn7
				Set pvComObject of hoColumn7 to voColumn7
					Set ComHTMLCaption of hoColumn7 to "Country <off 4><fgcolor=808080>Name"
					Set ComSortOrder of hoColumn7 to OLESortAscending
				Send Destroy to hoColumn7
			Send Destroy to hoColumns7
			Variant voItems2
			Get ComItems of hoView5 to voItems2
			Handle hoItems2
			Get Create (RefClass(cComItems)) to hoItems2
			Set pvComObject of hoItems2 to voItems2
				Set ComLockedItemCount of hoItems2 OLEexTop to 1
				Get ComLockedItem of hoItems2 OLEexTop 0 to h
				Set ComItemDivider of hoItems2 h to 0
				Set ComCellValueFormat of hoItems2 h 0 to (OLEexTotalField + OLEexHTML)
				Set ComCellValue of hoItems2 h 0 to "count(all,all,1)"
				Set ComFormatCell of hoItems2 h 0 to "`<r>Countries: <b>`+ (value format `0`)"
			Send Destroy to hoItems2
			Send ComEndUpdate of hoView5
		Send Destroy to hoView5
	Send Destroy to hoView4
	Set ComSelBackColor to |CI$1000000
	Set ComSelForeColor to (RGB(0,0,0))
	Set ComBackColorHeader to |CI$2000000
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(4,0,0))
	Set ComBackColorSortBar to (ComBackColor(Self))
	Send ComEndUpdate
End_Procedure
61
How can I get the selected items (sample 2)
// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant v
		Variant voView1
		Get ComParentView of hoView to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Get ComValue of hoView1 Nothing to v
		Send Destroy to hoView1
		Variant k
		Move v to k
		Send ComBeginUpdate of hoView
		Set ComColumnAutoResize of hoView to True
		Set ComKey of hoView to -1
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Get ComAdd of hoColumns k to Nothing
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Variant vValue
				Get ComFormatABC "A + `-> Sub-Item 1`" k Nothing Nothing to vValue
			Get ComAddItem of hoItems vValue to Nothing
			Variant vValue1
				Get ComFormatABC "A + `-> Sub-Item 2`" k Nothing Nothing to vValue1
			Get ComAddItem of hoItems vValue1 to Nothing
			Variant vValue2
				Get ComFormatABC "A + `-> Sub-Item 3`" k Nothing Nothing to vValue2
			Get ComAddItem of hoItems vValue2 to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure

// Indicates that the state of the item has been changed.
Procedure OnComViewItemStateEndChanging OLEViewItemStateEnum   llOperation HITEM   llItem Integer   llColIndex
	Forward Send OnComViewItemStateEndChanging llOperation llItem llColIndex
	Showln "End" llOperation
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Variant voItems1
		Get ComItems of hoView2 to voItems1
		Handle hoItems1
		Get Create (RefClass(cComItems)) to hoItems1
		Set pvComObject of hoItems1 to voItems1
			Showln "FocusItem" (ComCellCaption(hoItems1,(ComFocusItem(hoItems1)),0))
			Showln "SelectedItem" (ComCellCaption(hoItems1,(ComSelectedItem(hoItems1,0)),0))
		Send Destroy to hoItems1
	Send Destroy to hoView2
End_Procedure

// Indicates that the state of the item is about to be changed.
Procedure OnComViewItemStateStartChanging OLEViewItemStateEnum   llOperation HITEM   llItem Integer   llColIndex Variant   llCancel
	Forward Send OnComViewItemStateStartChanging llOperation llItem llColIndex llCancel
	Showln "Start" llOperation
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voView3
	Get ComView to voView3
	Handle hoView3
	Get Create (RefClass(cComView)) to hoView3
	Set pvComObject of hoView3 to voView3
		Send ComBeginUpdate of hoView3
		Set ComColumnAutoResize of hoView3 to True
		Variant voColumns1
		Get ComColumns of hoView3 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Get ComAdd of hoColumns1 "Default" to Nothing
		Send Destroy to hoColumns1
		Set ComKey of hoView3 to 0
		Set ComLinesAtRoot of hoView3 to OLEexLinesAtRoot
		Variant voItems2
		Get ComItems of hoView3 to voItems2
		Handle hoItems2
		Get Create (RefClass(cComItems)) to hoItems2
		Set pvComObject of hoItems2 to voItems2
			Get ComAddItem of hoItems2 "Item A" to Nothing
			Set ComSelectItem of hoItems2 (ComAddItem(hoItems2,"Item B")) to True
			Get ComAddItem of hoItems2 "Item C" to Nothing
		Send Destroy to hoItems2
		Send ComEndUpdate of hoView3
	Send Destroy to hoView3
	Send ComEndUpdate
End_Procedure
60
How do I specify a foreground color for a particular view

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant voConditionalFormats
		Get ComConditionalFormats of hoView to voConditionalFormats
		Handle hoConditionalFormats
		Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
		Set pvComObject of hoConditionalFormats to voConditionalFormats
			Variant voConditionalFormat
			Get ComAdd of hoConditionalFormats "1" Nothing to voConditionalFormat
			Handle hoConditionalFormat
			Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
			Set pvComObject of hoConditionalFormat to voConditionalFormat
				Set ComForeColor of hoConditionalFormat to (RGB(128,128,128))
			Send Destroy to hoConditionalFormat
		Send Destroy to hoConditionalFormats
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
59
How do display result/items in the view's filter bar

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComHeaderAppearance of hoView to OLEEtched
		Set ComHeaderHeight of hoView to 24
		Set ComDrawGridLines of hoView to OLEexAllLines
		Set ComGridLineStyle of hoView to OLEexGridLinesDash
	Send Destroy to hoView
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "Country" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Send ComBeginUpdate of hoView2
			Set ComColumnAutoResize of hoView2 to True
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 1 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComHTMLCaption of hoColumn1 to "Country <off 4><fgcolor=808080>Name"
					Set ComDisplayFilterButton of hoColumn1 to True
					Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn1 to 2
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Send ComEndUpdate of hoView2
		Send Destroy to hoView2
		Variant voView3
		Get ComView of hoView1 "State" to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Send ComBeginUpdate of hoView3
			Set ComColumnAutoResize of hoView3 to True
			Variant voColumns2
			Get ComColumns of hoView3 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 0 to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComVisible of hoColumn2 to False
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Variant voColumns3
			Get ComColumns of hoView3 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 1 to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Set ComVisible of hoColumn3 to False
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Variant voColumns4
			Get ComColumns of hoView3 to voColumns4
			Handle hoColumns4
			Get Create (RefClass(cComColumns)) to hoColumns4
			Set pvComObject of hoColumns4 to voColumns4
				Variant voColumn4
				Get ComItem of hoColumns4 2 to voColumn4
				Handle hoColumn4
				Get Create (RefClass(cComColumn)) to hoColumn4
				Set pvComObject of hoColumn4 to voColumn4
					Set ComHTMLCaption of hoColumn4 to "State <off 4><fgcolor=808080>Name"
					Set ComDisplayFilterButton of hoColumn4 to True
					Set ComFilterList of hoColumn4 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn4 to 2
				Send Destroy to hoColumn4
			Send Destroy to hoColumns4
			Send ComEndUpdate of hoView3
		Send Destroy to hoView3
		Variant voView4
		Get ComView of hoView1 "City" to voView4
		Handle hoView4
		Get Create (RefClass(cComView)) to hoView4
		Set pvComObject of hoView4 to voView4
			Send ComBeginUpdate of hoView4
			Variant voColumns5
			Get ComColumns of hoView4 to voColumns5
			Handle hoColumns5
			Get Create (RefClass(cComColumns)) to hoColumns5
			Set pvComObject of hoColumns5 to voColumns5
				Variant voColumn5
				Get ComItem of hoColumns5 0 to voColumn5
				Handle hoColumn5
				Get Create (RefClass(cComColumn)) to hoColumn5
				Set pvComObject of hoColumn5 to voColumn5
					Set ComVisible of hoColumn5 to False
				Send Destroy to hoColumn5
			Send Destroy to hoColumns5
			Variant voColumns6
			Get ComColumns of hoView4 to voColumns6
			Handle hoColumns6
			Get Create (RefClass(cComColumns)) to hoColumns6
			Set pvComObject of hoColumns6 to voColumns6
				Variant voColumn6
				Get ComItem of hoColumns6 1 to voColumn6
				Handle hoColumn6
				Get Create (RefClass(cComColumn)) to hoColumn6
				Set pvComObject of hoColumn6 to voColumn6
					Set ComVisible of hoColumn6 to False
				Send Destroy to hoColumn6
			Send Destroy to hoColumns6
			Variant voColumns7
			Get ComColumns of hoView4 to voColumns7
			Handle hoColumns7
			Get Create (RefClass(cComColumns)) to hoColumns7
			Set pvComObject of hoColumns7 to voColumns7
				Variant voColumn7
				Get ComItem of hoColumns7 2 to voColumn7
				Handle hoColumn7
				Get Create (RefClass(cComColumn)) to hoColumn7
				Set pvComObject of hoColumn7 to voColumn7
					Set ComHTMLCaption of hoColumn7 to "City <off 4><fgcolor=808080>Name"
					Set ComWidth of hoColumn7 to 128
					Set ComDef of hoColumn7 OLEexCellHasCheckBox to True
					Set ComDisplayFilterButton of hoColumn7 to True
					Set ComFilterList of hoColumn7 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn7 to 2
				Send Destroy to hoColumn7
			Send Destroy to hoColumns7
			Variant voColumns8
			Get ComColumns of hoView4 to voColumns8
			Handle hoColumns8
			Get Create (RefClass(cComColumns)) to hoColumns8
			Set pvComObject of hoColumns8 to voColumns8
				Variant voColumn8
				Get ComAdd of hoColumns8 "Pos" to voColumn8
				Handle hoColumn8
				Get Create (RefClass(cComColumn)) to hoColumn8
				Set pvComObject of hoColumn8 to voColumn8
					Set ComAllowSizing of hoColumn8 to False
					Set ComWidth of hoColumn8 to 32
					Set ComDef of hoColumn8 OLEexCellBackColor to 15790320
					Set ComPosition of hoColumn8 to 0
					Set ComFormatColumn of hoColumn8 to "1 pos ``"
				Send Destroy to hoColumn8
			Send Destroy to hoColumns8
			Set ComCountLockedColumns of hoView4 to 1
			Send ComEndUpdate of hoView4
		Send Destroy to hoView4
	Send Destroy to hoView1
	Variant voView5
	Get ComView to voView5
	Handle hoView5
	Get Create (RefClass(cComView)) to hoView5
	Set pvComObject of hoView5 to voView5
		Set ComFilterBarHeight of hoView5 to 36
		Set ComFilterBarCaption of hoView5 to "(( ( 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)`) )))"
		Set ComFilterBarPromptType of hoView5 to OLEexFilterPromptStartWith
		Set ComFilterBarPromptVisible of hoView5 to (OLEexFilterBarShowCloseIfRequired + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
	Send Destroy to hoView5
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(2,0,0))
	Send ComEndUpdate
	Send ComBeginUpdate
	Set ComMinColumnWidth to 348
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView6
	Get ComDefaultView Nothing to voView6
	Handle hoView6
	Get Create (RefClass(cComView)) to hoView6
	Set pvComObject of hoView6 to voView6
		Variant voView7
		Get ComView of hoView6 "City" to voView7
		Handle hoView7
		Get Create (RefClass(cComView)) to hoView7
		Set pvComObject of hoView7 to voView7
			Set ComFilterBarPromptPattern of hoView7 to "An"
		Send Destroy to hoView7
	Send Destroy to hoView6
	Send ComEndUpdate
End_Procedure
58
I am using the filter prompt feature, the question is how can I filter for items that starts with typed characters rather than contains

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComFilterBarPromptType of hoView to OLEexFilterPromptStartWith
		Set ComFilterBarPromptVisible of hoView to OLEexFilterBarPromptVisible
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "City" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Set ComFilterBarPromptPattern of hoView2 to "An"
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns "Name" to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComWidth of hoColumn to 128
					Set ComDef of hoColumn OLEexCellValueFormat to 1
					Set ComFormatColumn of hoColumn to "value replace `An` with `<bgcolor=000000><fgcolor=FFFFFF>An</fgcolor></bgcolor>` "
				Send Destroy to hoColumn
			Send Destroy to hoColumns
		Send Destroy to hoView2
	Send Destroy to hoView1
	Send ComEndUpdate
End_Procedure
57
FilterBarCaption Predefined Keywords

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackColorAlternate to (RGB(240,240,240))
	Set ComMode to OLEexSingleCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US"
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant voView1
		Get ComView of hoView "Country" to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Variant voColumns
			Get ComColumns of hoView1 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComAdd of hoColumns "Pos" to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComPosition of hoColumn to 0
					Set ComWidth of hoColumn to 32
					Set ComAllowSizing of hoColumn to False
					Set ComFormatColumn of hoColumn to "1pos ``"
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView1 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 "CountryCode" to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComWidth of hoColumn1 to 32
					Set ComAllowSizing of hoColumn1 to False
					Set ComDisplayFilterButton of hoColumn1 to True
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Variant voColumns2
			Get ComColumns of hoView1 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 "CountryName" to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComDisplayFilterButton of hoColumn2 to True
					Set ComFilterList of hoColumn2 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn2 to 2
					Set ComFilterType of hoColumn2 to OLEexFilter
					Set ComFilter of hoColumn2 to "Italy|Romania|Germany"
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Set ComFilterBarPromptPattern of hoView1 to "a"
			Set ComColumnAutoResize of hoView1 to True
			Variant v
			Variant voColumns3
			Get ComColumns of hoView1 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 "CountryName" to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Get ComIndex of hoColumn3 to v
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Set ComSearchColumnIndex of hoView1 to v
			Set ComFilterInclude of hoView1 to OLEexItemsWithChilds
			Set ComFilterBarCaption of hoView1 to "`<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>`"
			Set ComFilterBarPromptVisible of hoView1 to (OLEexFilterBarCaptionVisible + OLEexFilterBarVisible + OLEexFilterBarPromptVisible)
			Send ComApplyFilter of hoView1
		Send Destroy to hoView1
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
56
How can I enable the column's filter bar (view)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComFilterBarPromptVisible of hoView to OLEexFilterBarPromptVisible
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "Country" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Set ComColumnAutoResize of hoView2 to True
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns "CountryCode" to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 "CountryName" to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComDisplayFilterButton of hoColumn1 to True
					Set ComFilterList of hoColumn1 to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
					Set ComFilterBarDropDownWidth of hoColumn1 to 2
					Set ComFilterType of hoColumn1 to OLEexFilter
					Set ComFilter of hoColumn1 to "Romania|Germany"
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Send ComApplyFilter of hoView2
		Send Destroy to hoView2
	Send Destroy to hoView1
	Send ComEndUpdate
End_Procedure
55
How can I enable the column's filter bar

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComFilterBarPromptVisible of hoView to OLEexFilterBarPromptVisible
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns 0 to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComDisplayFilterButton of hoColumn to True
				Set ComFilterList of hoColumn to (OLEexShowExclude + OLEexShowFocusItem + OLEexShowCheckBox + OLEexSortItemsAsc)
				Set ComFilterBarDropDownWidth of hoColumn to 2
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Send Destroy to hoView
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "Country" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 0 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComFilterType of hoColumn1 to OLEexFilter
					Set ComFilter of hoColumn1 to "US|RO|GE"
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Send ComApplyFilter of hoView2
		Send Destroy to hoView2
	Send Destroy to hoView1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
54
How can I enable the control's filter bar (view)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComFilterBarPromptVisible of hoView to OLEexFilterBarPromptVisible
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
53
How can I enable the control's filter bar

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComFilterBarPromptVisible of hoView to OLEexFilterBarPromptVisible
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
52
Aggregate sum, min, max, count, avg, divider, total (view)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitEqualCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexSplitBarSize to (RGB(4,0,0))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "RO"
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant voView1
		Get ComView of hoView "Country" to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Send ComBeginUpdate of hoView1
			Set ComColumnAutoResize of hoView1 to True
			Variant voColumns
			Get ComColumns of hoView1 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voItems
			Get ComItems of hoView1 to voItems
			Handle hoItems
			Get Create (RefClass(cComItems)) to hoItems
			Set pvComObject of hoItems to voItems
				Set ComLockedItemCount of hoItems OLEexTop to 1
				Variant h
				Get ComLockedItem of hoItems OLEexTop 0 to h
				Set ComItemDivider of hoItems h to 0
				Set ComCellValueFormat of hoItems h 0 to (OLEexTotalField + OLEexHTML)
				Set ComCellValue of hoItems h 0 to "count(all,all,1)"
				Set ComFormatCell of hoItems h 0 to "`<r>Countries: <b>`+ (value format `0`)"
			Send Destroy to hoItems
			Send ComEndUpdate of hoView1
		Send Destroy to hoView1
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
51
Aggregate sum, min, max, count, avg, divider, total

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComHeaderVisible of hoView to False
	Send Destroy to hoView
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "Country" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Send ComBeginUpdate of hoView2
			Set ComColumnAutoResize of hoView2 to True
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voItems
			Get ComItems of hoView2 to voItems
			Handle hoItems
			Get Create (RefClass(cComItems)) to hoItems
			Set pvComObject of hoItems to voItems
				Set ComLockedItemCount of hoItems OLEexTop to 1
				Variant h
				Get ComLockedItem of hoItems OLEexTop 0 to h
				Set ComItemDivider of hoItems h to 0
				Set ComCellValueFormat of hoItems h 0 to (OLEexTotalField + OLEexHTML)
				Set ComCellValue of hoItems h 0 to "count(all,all,1)"
				Set ComFormatCell of hoItems h 0 to "`<r>Countries: <b>`+ (value format `0`)"
			Send Destroy to hoItems
			Send ComEndUpdate of hoView2
		Send Destroy to hoView2
		Variant voView3
		Get ComView of hoView1 "State" to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Send ComBeginUpdate of hoView3
			Set ComSingleSel of hoView3 to False
			Set ComColumnAutoResize of hoView3 to True
			Variant voColumns1
			Get ComColumns of hoView3 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 0 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComVisible of hoColumn1 to False
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Variant voColumns2
			Get ComColumns of hoView3 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 1 to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComVisible of hoColumn2 to False
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Variant voItems1
			Get ComItems of hoView3 to voItems1
			Handle hoItems1
			Get Create (RefClass(cComItems)) to hoItems1
			Set pvComObject of hoItems1 to voItems1
				Set ComLockedItemCount of hoItems1 OLEexTop to 1
				Get ComLockedItem of hoItems1 OLEexTop 0 to h
				Set ComItemDivider of hoItems1 h to 0
				Set ComCellValueFormat of hoItems1 h 0 to (OLEexTotalField + OLEexHTML)
				Set ComCellValue of hoItems1 h 0 to "count(all,all,1)"
				Set ComFormatCell of hoItems1 h 0 to "`<r>States: <b>`+ (value format `0`)"
			Send Destroy to hoItems1
			Send ComEndUpdate of hoView3
		Send Destroy to hoView3
		Variant voView4
		Get ComView of hoView1 "City" to voView4
		Handle hoView4
		Get Create (RefClass(cComView)) to hoView4
		Set pvComObject of hoView4 to voView4
			Send ComBeginUpdate of hoView4
			Variant voColumns3
			Get ComColumns of hoView4 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 0 to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Set ComVisible of hoColumn3 to False
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Variant voColumns4
			Get ComColumns of hoView4 to voColumns4
			Handle hoColumns4
			Get Create (RefClass(cComColumns)) to hoColumns4
			Set pvComObject of hoColumns4 to voColumns4
				Variant voColumn4
				Get ComItem of hoColumns4 1 to voColumn4
				Handle hoColumn4
				Get Create (RefClass(cComColumn)) to hoColumn4
				Set pvComObject of hoColumn4 to voColumn4
					Set ComVisible of hoColumn4 to False
				Send Destroy to hoColumn4
			Send Destroy to hoColumns4
			Variant voColumns5
			Get ComColumns of hoView4 to voColumns5
			Handle hoColumns5
			Get Create (RefClass(cComColumns)) to hoColumns5
			Set pvComObject of hoColumns5 to voColumns5
				Variant voColumn5
				Get ComItem of hoColumns5 2 to voColumn5
				Handle hoColumn5
				Get Create (RefClass(cComColumn)) to hoColumn5
				Set pvComObject of hoColumn5 to voColumn5
					Set ComWidth of hoColumn5 to 128
					Set ComHTMLCaption of hoColumn5 to "CityName"
				Send Destroy to hoColumn5
			Send Destroy to hoColumns5
			Variant voItems2
			Get ComItems of hoView4 to voItems2
			Handle hoItems2
			Get Create (RefClass(cComItems)) to hoItems2
			Set pvComObject of hoItems2 to voItems2
				Set ComLockedItemCount of hoItems2 OLEexTop to 1
				Get ComLockedItem of hoItems2 OLEexTop 0 to h
				Set ComItemDivider of hoItems2 h to 0
				Set ComCellValueFormat of hoItems2 h 0 to (OLEexTotalField + OLEexHTML)
				Set ComCellValue of hoItems2 h 0 to "count(all,all,1)"
				Set ComFormatCell of hoItems2 h 0 to "`<r>Cities: <b>`+ (value format `0`)"
			Send Destroy to hoItems2
			Send ComEndUpdate of hoView4
		Send Destroy to hoView4
	Send Destroy to hoView1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexSplitBarSize to (RGB(4,0,0))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
50
How can I add a check-box column (view)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<c>Select multiple-items in the City view, and press <b>SPACE</b> key"
	Set ComBackground OLEexStatusBackColor to (ComBackColor(Self))
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABO0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEhqGiUBihaQhRgyJI3RlJGaoDiKIokShKEpDLKlCx3H6OKQjOZgAoySo4SbDMp0NAkRBlFqcJCCCLAUgmTpQUBOYyiLKNRxQGoYLIlayZIiSIpMRbWcB3BYEOSFFasAAleYZTg2Jp1TbPAAYFL1ISDKSiIZqTA6PheT5yUzCNazbgEMTvRKqcSnO6bOgnEKQZKAGg4bg1RTVAYZLKtPR7aqyUJvZ5sMB6DiuLYRPKXZoucaNExSS5ebJtOzQJbEXBpXSpBwzSieBozIaQcJUOoaVxPFkaJrGuIx3h2BZPgOUIQmUcIwDARAkiAaQxh0DonCMLAeBKZobBCCY+niWJaBIKJJH4MoBgiQpCmmUR/ooBgCgCYBIBYBoBmCBYAn+ApgkgNgOgOYQIEYBIEGESBWBSBJhGgZgZgYIYoHYEIHCGaIGAuCAiCgegkgkYYoh4KIFiKKIuBeAJimiGgwgwYoYk4NILCCGJmDqDpjkidg+gGTo1jUAxAEAgI" to Nothing
	Send Destroy to hoAppearance
	Set ComSelBackColor to |CI$1000000
	Set ComSelForeColor to (ComForeColor(Self))
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant voView1
		Get ComView of hoView "City" to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Send ComBeginUpdate of hoView1
			Set ComShowFocusRect of hoView1 to False
			Set ComSingleSel of hoView1 to False
			Variant voColumns
			Get ComColumns of hoView1 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView1 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 1 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComVisible of hoColumn1 to False
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Variant voColumns2
			Get ComColumns of hoView1 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 2 to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComHTMLCaption of hoColumn2 to "City <off 4><fgcolor=808080>Name"
					Set ComWidth of hoColumn2 to 128
					Set ComDef of hoColumn2 OLEexCellHasCheckBox to True
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Variant v
			Variant voColumns3
			Get ComColumns of hoView1 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 "Name" to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Get ComIndex of hoColumn3 to v
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Set ComSearchColumnIndex of hoView1 to v
			Variant voColumns4
			Get ComColumns of hoView1 to voColumns4
			Handle hoColumns4
			Get Create (RefClass(cComColumns)) to hoColumns4
			Set pvComObject of hoColumns4 to voColumns4
				Variant voColumn4
				Get ComAdd of hoColumns4 "Pos" to voColumn4
				Handle hoColumn4
				Get Create (RefClass(cComColumn)) to hoColumn4
				Set pvComObject of hoColumn4 to voColumn4
					Set ComPosition of hoColumn4 to 0
					Set ComWidth of hoColumn4 to 32
					Set ComFormatColumn of hoColumn4 to "1 pos ``"
				Send Destroy to hoColumn4
			Send Destroy to hoColumns4
			Variant voConditionalFormats
			Get ComConditionalFormats of hoView1 to voConditionalFormats
			Handle hoConditionalFormats
			Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
			Set pvComObject of hoConditionalFormats to voConditionalFormats
				Variant voConditionalFormat
				Get ComAdd of hoConditionalFormats "%CS2 = 1" Nothing to voConditionalFormat
				Handle hoConditionalFormat
				Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
				Set pvComObject of hoConditionalFormat to voConditionalFormat
					Set ComBackColor of hoConditionalFormat to (RGB(190,190,190))
				Send Destroy to hoConditionalFormat
				Variant voConditionalFormat1
				Get ComAdd of hoConditionalFormats "%CS2 = 1" Nothing to voConditionalFormat1
				Handle hoConditionalFormat1
				Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
				Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
					Set ComBold of hoConditionalFormat1 to True
					Set ComApplyTo of hoConditionalFormat1 to |CI$8
				Send Destroy to hoConditionalFormat1
			Send Destroy to hoConditionalFormats
			Variant voItems
			Get ComItems of hoView1 to voItems
			Handle hoItems
			Get Create (RefClass(cComItems)) to hoItems
			Set pvComObject of hoItems to voItems
				Set ComCellState of hoItems (ComItemByIndex(hoItems,1)) 2 to 1
				Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 2 to 1
				Set ComCellState of hoItems (ComItemByIndex(hoItems,5)) 2 to 1
			Send Destroy to hoItems
			Send ComEndUpdate of hoView1
		Send Destroy to hoView1
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
49
How can I add a check-box column

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComHeaderAppearance of hoView to OLEEtched
		Set ComHeaderHeight of hoView to 24
		Set ComDrawGridLines of hoView to OLEexVLines
		Set ComGridLineStyle of hoView to OLEexGridLinesDash
	Send Destroy to hoView
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "Country" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Send ComBeginUpdate of hoView2
			Set ComColumnAutoResize of hoView2 to True
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 1 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComHTMLCaption of hoColumn1 to "Country <off 4><fgcolor=808080>Name"
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Send ComEndUpdate of hoView2
		Send Destroy to hoView2
		Variant voView3
		Get ComView of hoView1 "State" to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Send ComBeginUpdate of hoView3
			Set ComColumnAutoResize of hoView3 to True
			Variant voColumns2
			Get ComColumns of hoView3 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 0 to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComVisible of hoColumn2 to False
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Variant voColumns3
			Get ComColumns of hoView3 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 1 to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Set ComVisible of hoColumn3 to False
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Variant voColumns4
			Get ComColumns of hoView3 to voColumns4
			Handle hoColumns4
			Get Create (RefClass(cComColumns)) to hoColumns4
			Set pvComObject of hoColumns4 to voColumns4
				Variant voColumn4
				Get ComItem of hoColumns4 2 to voColumn4
				Handle hoColumn4
				Get Create (RefClass(cComColumn)) to hoColumn4
				Set pvComObject of hoColumn4 to voColumn4
					Set ComHTMLCaption of hoColumn4 to "State <off 4><fgcolor=808080>Name"
				Send Destroy to hoColumn4
			Send Destroy to hoColumns4
			Send ComEndUpdate of hoView3
		Send Destroy to hoView3
		Variant voView4
		Get ComView of hoView1 "City" to voView4
		Handle hoView4
		Get Create (RefClass(cComView)) to hoView4
		Set pvComObject of hoView4 to voView4
			Send ComBeginUpdate of hoView4
			Set ComShowFocusRect of hoView4 to False
			Set ComSingleSel of hoView4 to False
			Variant voColumns5
			Get ComColumns of hoView4 to voColumns5
			Handle hoColumns5
			Get Create (RefClass(cComColumns)) to hoColumns5
			Set pvComObject of hoColumns5 to voColumns5
				Variant voColumn5
				Get ComItem of hoColumns5 0 to voColumn5
				Handle hoColumn5
				Get Create (RefClass(cComColumn)) to hoColumn5
				Set pvComObject of hoColumn5 to voColumn5
					Set ComVisible of hoColumn5 to False
				Send Destroy to hoColumn5
			Send Destroy to hoColumns5
			Variant voColumns6
			Get ComColumns of hoView4 to voColumns6
			Handle hoColumns6
			Get Create (RefClass(cComColumns)) to hoColumns6
			Set pvComObject of hoColumns6 to voColumns6
				Variant voColumn6
				Get ComItem of hoColumns6 1 to voColumn6
				Handle hoColumn6
				Get Create (RefClass(cComColumn)) to hoColumn6
				Set pvComObject of hoColumn6 to voColumn6
					Set ComVisible of hoColumn6 to False
				Send Destroy to hoColumn6
			Send Destroy to hoColumns6
			Variant voColumns7
			Get ComColumns of hoView4 to voColumns7
			Handle hoColumns7
			Get Create (RefClass(cComColumns)) to hoColumns7
			Set pvComObject of hoColumns7 to voColumns7
				Variant voColumn7
				Get ComItem of hoColumns7 2 to voColumn7
				Handle hoColumn7
				Get Create (RefClass(cComColumn)) to hoColumn7
				Set pvComObject of hoColumn7 to voColumn7
					Set ComHTMLCaption of hoColumn7 to "City <off 4><fgcolor=808080>Name"
					Set ComWidth of hoColumn7 to 128
					Set ComDef of hoColumn7 OLEexCellHasCheckBox to True
				Send Destroy to hoColumn7
			Send Destroy to hoColumns7
			Variant v
			Variant voColumns8
			Get ComColumns of hoView4 to voColumns8
			Handle hoColumns8
			Get Create (RefClass(cComColumns)) to hoColumns8
			Set pvComObject of hoColumns8 to voColumns8
				Variant voColumn8
				Get ComItem of hoColumns8 "Name" to voColumn8
				Handle hoColumn8
				Get Create (RefClass(cComColumn)) to hoColumn8
				Set pvComObject of hoColumn8 to voColumn8
					Get ComIndex of hoColumn8 to v
				Send Destroy to hoColumn8
			Send Destroy to hoColumns8
			Set ComSearchColumnIndex of hoView4 to v
			Variant voColumns9
			Get ComColumns of hoView4 to voColumns9
			Handle hoColumns9
			Get Create (RefClass(cComColumns)) to hoColumns9
			Set pvComObject of hoColumns9 to voColumns9
				Variant voColumn9
				Get ComAdd of hoColumns9 "Pos" to voColumn9
				Handle hoColumn9
				Get Create (RefClass(cComColumn)) to hoColumn9
				Set pvComObject of hoColumn9 to voColumn9
					Set ComPosition of hoColumn9 to 0
					Set ComWidth of hoColumn9 to 32
					Set ComFormatColumn of hoColumn9 to "1 pos ``"
				Send Destroy to hoColumn9
			Send Destroy to hoColumns9
			Variant voConditionalFormats
			Get ComConditionalFormats of hoView4 to voConditionalFormats
			Handle hoConditionalFormats
			Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
			Set pvComObject of hoConditionalFormats to voConditionalFormats
				Variant voConditionalFormat
				Get ComAdd of hoConditionalFormats "%CS2 = 1" Nothing to voConditionalFormat
				Handle hoConditionalFormat
				Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
				Set pvComObject of hoConditionalFormat to voConditionalFormat
					Set ComBackColor of hoConditionalFormat to (RGB(190,190,190))
				Send Destroy to hoConditionalFormat
				Variant voConditionalFormat1
				Get ComAdd of hoConditionalFormats "%CS2 = 1" Nothing to voConditionalFormat1
				Handle hoConditionalFormat1
				Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat1
				Set pvComObject of hoConditionalFormat1 to voConditionalFormat1
					Set ComBold of hoConditionalFormat1 to True
					Set ComApplyTo of hoConditionalFormat1 to |CI$8
				Send Destroy to hoConditionalFormat1
			Send Destroy to hoConditionalFormats
			Variant voItems
			Get ComItems of hoView4 to voItems
			Handle hoItems
			Get Create (RefClass(cComItems)) to hoItems
			Set pvComObject of hoItems to voItems
				Set ComCellState of hoItems (ComItemByIndex(hoItems,1)) 2 to 1
				Set ComCellState of hoItems (ComItemByIndex(hoItems,3)) 2 to 1
				Set ComCellState of hoItems (ComItemByIndex(hoItems,5)) 2 to 1
			Send Destroy to hoItems
			Send ComEndUpdate of hoView4
		Send Destroy to hoView4
	Send Destroy to hoView1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<c>Select multiple-items in the City view, and press <b>SPACE</b> key"
	Set ComBackground OLEexStatusBackColor to (ComBackColor(Self))
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABO0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBKUQSDqEYyjGLIXAWCYSAAMIwDKAUEhqGiUBihaQhRgyJI3RlJGaoDiKIokShKEpDLKlCx3H6OKQjOZgAoySo4SbDMp0NAkRBlFqcJCCCLAUgmTpQUBOYyiLKNRxQGoYLIlayZIiSIpMRbWcB3BYEOSFFasAAleYZTg2Jp1TbPAAYFL1ISDKSiIZqTA6PheT5yUzCNazbgEMTvRKqcSnO6bOgnEKQZKAGg4bg1RTVAYZLKtPR7aqyUJvZ5sMB6DiuLYRPKXZoucaNExSS5ebJtOzQJbEXBpXSpBwzSieBozIaQcJUOoaVxPFkaJrGuIx3h2BZPgOUIQmUcIwDARAkiAaQxh0DonCMLAeBKZobBCCY+niWJaBIKJJH4MoBgiQpCmmUR/ooBgCgCYBIBYBoBmCBYAn+ApgkgNgOgOYQIEYBIEGESBWBSBJhGgZgZgYIYoHYEIHCGaIGAuCAiCgegkgkYYoh4KIFiKKIuBeAJimiGgwgwYoYk4NILCCGJmDqDpjkidg+gGTo1jUAxAEAgI" to Nothing
	Send Destroy to hoAppearance
	Set ComSelBackColor to |CI$1000000
	Set ComSelForeColor to (ComForeColor(Self))
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
48
How can I access a view

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComHeaderAppearance of hoView to OLEEtched
		Set ComHeaderHeight of hoView to 24
		Set ComDrawGridLines of hoView to OLEexAllLines
		Set ComGridLineStyle of hoView to OLEexGridLinesDash
	Send Destroy to hoView
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "Country" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Send ComBeginUpdate of hoView2
			Set ComColumnAutoResize of hoView2 to True
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns 0 to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
			Send Destroy to hoColumns
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn1
				Get ComItem of hoColumns1 1 to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComHTMLCaption of hoColumn1 to "Country <off 4><fgcolor=808080>Name"
				Send Destroy to hoColumn1
			Send Destroy to hoColumns1
			Send ComEndUpdate of hoView2
		Send Destroy to hoView2
		Variant voView3
		Get ComView of hoView1 "State" to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Send ComBeginUpdate of hoView3
			Set ComColumnAutoResize of hoView3 to True
			Variant voColumns2
			Get ComColumns of hoView3 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn2
				Get ComItem of hoColumns2 0 to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComVisible of hoColumn2 to False
				Send Destroy to hoColumn2
			Send Destroy to hoColumns2
			Variant voColumns3
			Get ComColumns of hoView3 to voColumns3
			Handle hoColumns3
			Get Create (RefClass(cComColumns)) to hoColumns3
			Set pvComObject of hoColumns3 to voColumns3
				Variant voColumn3
				Get ComItem of hoColumns3 1 to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Set ComVisible of hoColumn3 to False
				Send Destroy to hoColumn3
			Send Destroy to hoColumns3
			Variant voColumns4
			Get ComColumns of hoView3 to voColumns4
			Handle hoColumns4
			Get Create (RefClass(cComColumns)) to hoColumns4
			Set pvComObject of hoColumns4 to voColumns4
				Variant voColumn4
				Get ComItem of hoColumns4 2 to voColumn4
				Handle hoColumn4
				Get Create (RefClass(cComColumn)) to hoColumn4
				Set pvComObject of hoColumn4 to voColumn4
					Set ComHTMLCaption of hoColumn4 to "State <off 4><fgcolor=808080>Name"
				Send Destroy to hoColumn4
			Send Destroy to hoColumns4
			Send ComEndUpdate of hoView3
		Send Destroy to hoView3
		Variant voView4
		Get ComView of hoView1 "City" to voView4
		Handle hoView4
		Get Create (RefClass(cComView)) to hoView4
		Set pvComObject of hoView4 to voView4
			Send ComBeginUpdate of hoView4
			Variant voColumns5
			Get ComColumns of hoView4 to voColumns5
			Handle hoColumns5
			Get Create (RefClass(cComColumns)) to hoColumns5
			Set pvComObject of hoColumns5 to voColumns5
				Variant voColumn5
				Get ComItem of hoColumns5 0 to voColumn5
				Handle hoColumn5
				Get Create (RefClass(cComColumn)) to hoColumn5
				Set pvComObject of hoColumn5 to voColumn5
					Set ComVisible of hoColumn5 to False
				Send Destroy to hoColumn5
			Send Destroy to hoColumns5
			Variant voColumns6
			Get ComColumns of hoView4 to voColumns6
			Handle hoColumns6
			Get Create (RefClass(cComColumns)) to hoColumns6
			Set pvComObject of hoColumns6 to voColumns6
				Variant voColumn6
				Get ComItem of hoColumns6 1 to voColumn6
				Handle hoColumn6
				Get Create (RefClass(cComColumn)) to hoColumn6
				Set pvComObject of hoColumn6 to voColumn6
					Set ComVisible of hoColumn6 to False
				Send Destroy to hoColumn6
			Send Destroy to hoColumns6
			Variant voColumns7
			Get ComColumns of hoView4 to voColumns7
			Handle hoColumns7
			Get Create (RefClass(cComColumns)) to hoColumns7
			Set pvComObject of hoColumns7 to voColumns7
				Variant voColumn7
				Get ComItem of hoColumns7 2 to voColumn7
				Handle hoColumn7
				Get Create (RefClass(cComColumn)) to hoColumn7
				Set pvComObject of hoColumn7 to voColumn7
					Set ComHTMLCaption of hoColumn7 to "City <off 4><fgcolor=808080>Name"
					Set ComWidth of hoColumn7 to 128
					Set ComDef of hoColumn7 OLEexCellBackColor to 15790320
				Send Destroy to hoColumn7
			Send Destroy to hoColumns7
			Set ComCountLockedColumns of hoView4 to 1
			Send ComEndUpdate of hoView4
		Send Destroy to hoView4
	Send Destroy to hoView1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
47
Conditional Format (check)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant voConditionalFormats
		Get ComConditionalFormats of hoView to voConditionalFormats
		Handle hoConditionalFormats
		Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
		Set pvComObject of hoConditionalFormats to voConditionalFormats
			Variant voConditionalFormat
			Get ComAdd of hoConditionalFormats "%CS0 = 1" Nothing to voConditionalFormat
			Handle hoConditionalFormat
			Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
			Set pvComObject of hoConditionalFormat to voConditionalFormat
				Set ComBold of hoConditionalFormat to True
			Send Destroy to hoConditionalFormat
		Send Destroy to hoConditionalFormats
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns 0 to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComDef of hoColumn OLEexCellHasCheckBox to True
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Set ComCellState of hoItems (ComFocusItem(hoItems)) 0 to 1
		Send Destroy to hoItems
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
46
Conditional Format (view)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant voView1
		Get ComView of hoView "City" to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Variant voConditionalFormats
			Get ComConditionalFormats of hoView1 to voConditionalFormats
			Handle hoConditionalFormats
			Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
			Set pvComObject of hoConditionalFormats to voConditionalFormats
				Variant voConditionalFormat
				Get ComAdd of hoConditionalFormats "(%0 = `US`) and (%2 like `Al*`)" Nothing to voConditionalFormat
				Handle hoConditionalFormat
				Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
				Set pvComObject of hoConditionalFormat to voConditionalFormat
					Set ComBold of hoConditionalFormat to True
					Set ComBackColor of hoConditionalFormat to (RGB(240,240,240))
				Send Destroy to hoConditionalFormat
			Send Destroy to hoConditionalFormats
		Send Destroy to hoView1
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
45
Conditional Format

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant voConditionalFormats
		Get ComConditionalFormats of hoView to voConditionalFormats
		Handle hoConditionalFormats
		Get Create (RefClass(cComConditionalFormats)) to hoConditionalFormats
		Set pvComObject of hoConditionalFormats to voConditionalFormats
			Variant voConditionalFormat
			Get ComAdd of hoConditionalFormats "%0 = `US`" Nothing to voConditionalFormat
			Handle hoConditionalFormat
			Get Create (RefClass(cComConditionalFormat)) to hoConditionalFormat
			Set pvComObject of hoConditionalFormat to voConditionalFormat
				Set ComBold of hoConditionalFormat to True
			Send Destroy to hoConditionalFormat
		Send Destroy to hoConditionalFormats
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
44
I've seen the AllowSplitView property, the question is how can I load data to

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Set ComAllowSplitView to OLEexAllowOneSplitView
	Set ComSplitViewHeight to 256
Get ComDefaultView 1 to Nothing	Send ComEndUpdate
End_Procedure
43
How can I group the items (view)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComSingleSel of hoView to False
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABa0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDYOMjwlDKEgADDFEgjJBkRxtDCPIDnGQoDiGI4vSrCQ4yDA8GxCGSfIrjKiYbiGNY8RgZCiOMAFJSpC6gZRoSq4doGGJLQiDMaAdBNHyZKqpbQqeCZPDINQlWzbcrjKKFYQTOi7I4sCbYcqKA5PTbNdYyVBMWxfGIbaIkXAcBjuO4hWbFdASRQdDYtHTIbzjCxLcgMD4gRwWCYNSAGRZJLDKK4gSh6eorHQAX4AGabFBOP5fC7TNJ0OKLRrkAJub5eFx3LJ97ohbLsOzYZK2ByDFqiMLGQZMZxvGWUBAnYfJImcOwLEiBp0gaGpekSBxjE+WZ2jse5Im2S5ZkGYhdn4EY6A4Q4vAOWJ6H0V4oEgIgSFAGhGDGUB1ByBhVBUAwyhKMQIE2AgRjCWQJAoEIWk2SxCAGBBghQeJYkMZIYBYIYoHIG4HGICB+CKB4iEiBglgaUAzhiJAZA+Q4Qk2CxiniOgwgyYwolYMYNmMQw2CoGQihiLg5g+YxpAIOINiOOJ2CyEBkgkDhKhCJBQAI2IlAkJhMgqZBpEYS4UiSGQ2E+FglHkdg5haI5pHIVoViYCQeF6vZJhYY4aCWWYqGyGpkimOhnhyZQ4nIToYGcSY+ESFQnHmGhwh+YpphYO4gmKOlEiGKIKBaCohmeQ4tkUQJQBAgI=" to Nothing
		Get ComAdd of hoAppearance 2 "gBFLBCJwBAEHhEJAAEhABO0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDYOMjwlDKEgADDFEgjDBkRxtDCPIDnGQoDiGI4vSrCQ4zHQkOx9C6NKLjOQaMhwcJPABTZwRRQMUyLAiQRioGKKJgkC4cAxIFhRXSVIyhC6XRiGURbJquLw1DBbEI3BaUOS7HqOK7vCZ7cACVYqQjLMrzCK8ZxLPqbZznOjZXoCKJDQzVYADFRVd4rMK9QABWw4YqWZYXX7kUDxbTdEYzPQAMw1GCcbxmF6eWbCNq3LidXTnOK3dwkO55cyuA6oazi8T6Bi2M6DDQNGSzZiuGZ9YSOOIwHJIN4QDSUpYmQOoJA6KxVlCDBsnwOx9iWUhfiCThzjUHZun2WgSAiBIUA0JgziGVJkGWUZAkEUoyBEN51BsDYQhCIQJGqHAUCAGBGA0RwtDcVIgkgNgOgOYQIDiXYEmESBWBaBZhggTgSgYYZIHYGoDGGaIGBiBpiCiFJdgkIksiiChhliLgsgYYpoj4F4MGMKBWDSDRhngMg4gcIQYnYPoEE6N4ZAMQBAICA=" to Nothing
	Send Destroy to hoAppearance
	Set ComSelBackColor to |CI$1000000
	Set ComSelForeColor to (RGB(0,0,0))
	Set ComBackColorHeader to |CI$2000000
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(2,0,0))
	Set ComBackColorSortBar to (ComBackColor(Self))
	Send ComEndUpdate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "RO\CJ|BV|CS"
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voView2
		Get ComView of hoView1 "City" to voView2
		Handle hoView2
		Get Create (RefClass(cComView)) to hoView2
		Set pvComObject of hoView2 to voView2
			Send ComBeginUpdate of hoView2
			Variant voColumns
			Get ComColumns of hoView2 to voColumns
			Handle hoColumns
			Get Create (RefClass(cComColumns)) to hoColumns
			Set pvComObject of hoColumns to voColumns
				Variant voColumn
				Get ComItem of hoColumns "CountryCode" to voColumn
				Handle hoColumn
				Get Create (RefClass(cComColumn)) to hoColumn
				Set pvComObject of hoColumn to voColumn
					Set ComVisible of hoColumn to False
				Send Destroy to hoColumn
				Variant voColumn1
				Get ComItem of hoColumns "Name" to voColumn1
				Handle hoColumn1
				Get Create (RefClass(cComColumn)) to hoColumn1
				Set pvComObject of hoColumn1 to voColumn1
					Set ComSortOrder of hoColumn1 to OLESortAscending
					Set ComWidth of hoColumn1 to 128
				Send Destroy to hoColumn1
			Send Destroy to hoColumns
			Set ComSortBarVisible of hoView2 to True
			Set ComAllowGroupBy of hoView2 to True
			Set ComSingleSort of hoView2 to False
			Variant voColumns1
			Get ComColumns of hoView2 to voColumns1
			Handle hoColumns1
			Get Create (RefClass(cComColumns)) to hoColumns1
			Set pvComObject of hoColumns1 to voColumns1
				Variant voColumn2
				Get ComItem of hoColumns1 "StateCode" to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComSortOrder of hoColumn2 to OLESortAscending
				Send Destroy to hoColumn2
			Send Destroy to hoColumns1
			Variant v
			Variant voColumns2
			Get ComColumns of hoView2 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn3
				Get ComItem of hoColumns2 "Name" to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Get ComIndex of hoColumn3 to v
				Send Destroy to hoColumn3
			Send Destroy to hoColumns2
			Set ComTreeColumnIndex of hoView2 to v
			Send ComEndUpdate of hoView2
		Send Destroy to hoView2
	Send Destroy to hoView1
	Send ComEndUpdate
End_Procedure
42
How can I group the items

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	// Columns("StateName").SortOrder = 1
	// Columns("StateCode").SortOrder = nGroupByIfCity
	Variant nGroupByIfCity
	Variant vA
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Get ComTag of hoView to vA
	Send Destroy to hoView
	Get ComFormatABC "( A = `City`) ? 1 : 0" vA Nothing Nothing to nGroupByIfCity
	Variant bColumnAutoResize
	Variant vA1
	Variant voView1
	Get ComView to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Get ComTag of hoView1 to vA1
	Send Destroy to hoView1
	Get ComFormatABC " (A = `City`) ? 0 : -1" vA1 Nothing Nothing to bColumnAutoResize
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Send ComBeginUpdate of hoView2
		Set ComSingleSel of hoView2 to False
		Variant voColumns
		Get ComColumns of hoView2 to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Variant voColumns1
		Get ComColumns of hoView2 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn1
			Get ComItem of hoColumns1 "CountryName" to voColumn1
			Handle hoColumn1
			Get Create (RefClass(cComColumn)) to hoColumn1
			Set pvComObject of hoColumn1 to voColumn1
				Set ComSortOrder of hoColumn1 to OLESortAscending
			Send Destroy to hoColumn1
		Send Destroy to hoColumns1
		Variant voColumns2
		Get ComColumns of hoView2 to voColumns2
		Handle hoColumns2
		Get Create (RefClass(cComColumns)) to hoColumns2
		Set pvComObject of hoColumns2 to voColumns2
	Get ComItem of hoColumns2 2 to Nothing		Send Destroy to hoColumns2
		Send Destroy to hoView2
		Set ComTreeColumnIndex to 2
		Set ComAllowGroupBy to True
		Set ComSingleSort to False
		Set ComSortBarVisible to nGroupByIfCity
		Set ComColumnAutoResize to bColumnAutoResize
		Send ComEndUpdate
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABa0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDYOMjwlDKEgADDFEgjJBkRxtDCPIDnGQoDiGI4vSrCQ4yDA8GxCGSfIrjKiYbiGNY8RgZCiOMAFJSpC6gZRoSq4doGGJLQiDMaAdBNHyZKqpbQqeCZPDINQlWzbcrjKKFYQTOi7I4sCbYcqKA5PTbNdYyVBMWxfGIbaIkXAcBjuO4hWbFdASRQdDYtHTIbzjCxLcgMD4gRwWCYNSAGRZJLDKK4gSh6eorHQAX4AGabFBOP5fC7TNJ0OKLRrkAJub5eFx3LJ97ohbLsOzYZK2ByDFqiMLGQZMZxvGWUBAnYfJImcOwLEiBp0gaGpekSBxjE+WZ2jse5Im2S5ZkGYhdn4EY6A4Q4vAOWJ6H0V4oEgIgSFAGhGDGUB1ByBhVBUAwyhKMQIE2AgRjCWQJAoEIWk2SxCAGBBghQeJYkMZIYBYIYoHIG4HGICB+CKB4iEiBglgaUAzhiJAZA+Q4Qk2CxiniOgwgyYwolYMYNmMQw2CoGQihiLg5g+YxpAIOINiOOJ2CyEBkgkDhKhCJBQAI2IlAkJhMgqZBpEYS4UiSGQ2E+FglHkdg5haI5pHIVoViYCQeF6vZJhYY4aCWWYqGyGpkimOhnhyZQ4nIToYGcSY+ESFQnHmGhwh+YpphYO4gmKOlEiGKIKBaCohmeQ4tkUQJQBAgI=" to Nothing
		Get ComAdd of hoAppearance 2 "gBFLBCJwBAEHhEJAAEhABO0GACAADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDYOMjwlDKEgADDFEgjDBkRxtDCPIDnGQoDiGI4vSrCQ4zHQkOx9C6NKLjOQaMhwcJPABTZwRRQMUyLAiQRioGKKJgkC4cAxIFhRXSVIyhC6XRiGURbJquLw1DBbEI3BaUOS7HqOK7vCZ7cACVYqQjLMrzCK8ZxLPqbZznOjZXoCKJDQzVYADFRVd4rMK9QABWw4YqWZYXX7kUDxbTdEYzPQAMw1GCcbxmF6eWbCNq3LidXTnOK3dwkO55cyuA6oazi8T6Bi2M6DDQNGSzZiuGZ9YSOOIwHJIN4QDSUpYmQOoJA6KxVlCDBsnwOx9iWUhfiCThzjUHZun2WgSAiBIUA0JgziGVJkGWUZAkEUoyBEN51BsDYQhCIQJGqHAUCAGBGA0RwtDcVIgkgNgOgOYQIDiXYEmESBWBaBZhggTgSgYYZIHYGoDGGaIGBiBpiCiFJdgkIksiiChhliLgsgYYpoj4F4MGMKBWDSDRhngMg4gcIQYnYPoEE6N4ZAMQBAICA=" to Nothing
	Send Destroy to hoAppearance
	Set ComSelBackColor to |CI$1000000
	Set ComSelForeColor to (RGB(0,0,0))
	Set ComBackColorHeader to |CI$2000000
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(2,0,0))
	Set ComBackColorSortBar to (ComBackColor(Self))
	Send ComEndUpdate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "RO\CJ|BV|CS"
	Send ComEndUpdate
End_Procedure
41
How can I change the visual appearance of the selection/header

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	// Columns("StateName").SortOrder = 1
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Variant voColumns1
		Get ComColumns of hoView to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn1
			Get ComItem of hoColumns1 "CountryName" to voColumn1
			Handle hoColumn1
			Get Create (RefClass(cComColumn)) to hoColumn1
			Set pvComObject of hoColumn1 to voColumn1
				Set ComSortOrder of hoColumn1 to OLESortAscending
			Send Destroy to hoColumn1
		Send Destroy to hoColumns1
		Variant voColumns2
		Get ComColumns of hoView to voColumns2
		Handle hoColumns2
		Get Create (RefClass(cComColumns)) to hoColumns2
		Set pvComObject of hoColumns2 to voColumns2
	Get ComItem of hoColumns2 "Name" to Nothing		Send Destroy to hoColumns2
		Send Destroy to hoView
		Send ComEndUpdate
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voAppearance
	Get ComVisualAppearance to voAppearance
	Handle hoAppearance
	Get Create (RefClass(cComAppearance)) to hoAppearance
	Set pvComObject of hoAppearance to voAppearance
		Get ComAdd of hoAppearance 1 "gBFLBCJwBAEHhEJAAEhABWYDg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgmEgADCNAwgFBIcBhE4ZIKkEYoMiONoYR5Ac4yFAcQxHE6TZRgeDZToWN48TZLEB0VRFGL1J4AKbfKKKBiqIZDTpMdKSHIIFQ4BiEaYkGjqQpKVIdDSJMwWTI4ahhNSEbauCZ7DhyXpLUbeNSyXJsXw7GSOZJvGZ5bjuIY+RxQEK1NQkOyNOiOAosGCQWiDE4DWZZUT3XS+HgAGStY4rWCcSgOYIDZTPOT1DYtIY3NC5c7tS4bPq3NZHXTAeigBa4AZTQafcTvSA5OjOQQ2VhNWIXRxgAZ3YCNbzpTgsHeD5DmUQh3jSTQ/DuIZBh0bJ8BsG4WlsYwXjEapphuXh/HsRQJAQQhKAaEwZlCahyDKchJlEIgRDedQbA2EIQiECR3BudAgBgRgBgSHZQFSCwzECV4DGCeA6BCBJhCgVgRgWs4YkgNJKCOMJ2C0T4Dn4IIIiIGIOCaCRiy0HQ9iGIxMhgMAMmKZJ2D+SQThININgiM4In+DhPnIDJhD+RxzgCfwaE2c58F0N4PniSJ/guTJiCiOAygwCJODyDwIFifhVD+R5JBQcIREYOQgFgNwPnkRJ/qOIgIjEMYMFOVg9hESA5BQfYSCbQx1DcZA5lAXQ2vURh4hoT55hiRgfEqYwMkUPQPnGahgiGJwpmAdYeAaWZgGINoPnEWoQBKaQKAyf4gAwMZoisMIMGOTJ/B0KQK0EG5NhqDolBmKhRG6JQUX8GJYD+aZaBaGweAqEwEkYPNpDaL4u2kIJXi8a5xgKPwViucQuj8EBrnqXJ/i0DARlyJwwCyIYglaLxtDGDpVjSRY7EwUY0kQexMD+MhrgsOJAB2LJzCKOAZG0O4gn8GANFuLptBaLpREKUwRG0MJylOOYPnuEpjjOTIamAYo7G/QxfDUMAsBAWI7ESe40ZuQ5bjafY+GycZcigMBODOZJ/CoTo8F8GZGDGI58iaRhKEwZIhkYSZ8GcFYQVeZIqDCThsFiMQ7g+fI8n8LAOlyTw1CuMxSjMNQqHMUojDWSxPnyKJDB8CpjBSag+iSE4/EmUpLh0KI2lKCxNCiMvkg0KxHhYNBSACMQyA6c5wn8MJrg2Axflga4DAaOAviuApyjgLorg0dJ/laDICAyNQyg8LR47INxznzfI3jOPkS4NQMDzCoPgMQUBNqzFyJAco0ROLRFOPkVIEB4v7FWBAeT/xTB7E+OYR4MAzjzAMG8GIxgPj8CSJwIolxjCJTeB8cw7hIjVDqD0LwkA3BpAMNYFgbAxDGF8C0aYxw+gpA8GEeI/QgjJFeHcc4/xBjggePEYgfRPjnAOJAN4+QDjHCiN0TQhBMiODWOkA4+RqjGH0P4W4sRjCdB4GkaIxhOD6HiM0V4ehfCRFcEsDIZhkjcD4J8PwQR/j3D8Acf43x8h+B+Jkf49RPh/CCLIVIEwTBxFsP8L4+x/CAAgA4AIQAsADACMoSA6wghEAYIAQBAQA==" to Nothing
		Get ComAdd of hoAppearance 2 ("gBFLBCJwBAEHhEJAAEhABEwFg6AADACAxRDgMQBQKAAzAJBIYhiG4cYCgMYxXDOCYXABCEYRXBIZQ7BKNIxjSJwFgkAoJDaMUjwlDiEgADCNAySCKkGRHG6MI6gOapCgOIYjS7KYASTIMDw7EIZJ7jSioboKNo9ABQT71GAFJr/DChKIhWiKIoKI4hAZHAIQTR8QylKirIwlcYhVCWa5tS82CzoJrKdI4WZHFgwHR8cRxLKVJQlaDZSoIMQ2STfV7TZLkQyZNSTJQpGq6HxWeIcETkMBlLIGNSrNCqIrwChach2XpLQjeYAZTAdR43TqBbLqeyYXq+dwAWxtdzXDacXy/TzWAA1LLMKr/EpZDhSxARVDbD4XY7TdBcDwsOYAmQcohjyXQ8G6QRkgSa41H0WY+luSx1l6eZ2noLYFEePwDlUdQ8HufRsCSIBpDGHQOicIwtBoBguGuBAhDWfxGkMZAkCgeAQhcEQiAYEYDmABx8hANRYmQMhKHMTItB+IRoGIF4GGEMoeBKBQhGGfRWgiYhIgYHYIE+c5Ym8P5OlMWgsguIpYj4KQ7mIExMi6CIVGOKJTD/OxyDuDxVDiWB/g2CAIgyZwzk+eQeEmEgkikBIuCADRJD4Iw5AyU5+FSFYlFkXRThQZQJEkVg4gyM5+GCGImBmDhbhOTRCj4RRVg4Ewkn+GxmnmOhwhaZopiYaxUk4Awgn+Hhnjmah8h0JQJioI4fCgSZ6HqIAnGoDoGh8aJKCCMAgGiKgygUVYNEoPoViQFRqE6E4WmkYpAgKJBpioHJ/iUSAqhKIIimeeoOh4NQLBIDoniSKgqjCA4szqYJoDcKxqmKN4uGkSo2oGKxam6Qoug2Sp0gRggiBaQYxCuGpyFuMhsgsKRTjMbA7DqI40AsIgakuNQsEoUpZYIOxqlONRsDoUphjgCB7G6ZIxGWMpMgeOgsBMbo2jyDoLlCW45i6cpSmmOJvGuTpziUL4jFCNAiC8G56nWP5ljwDJVC0CIcBcB5Dm8dRPZyTRSlcDY/DAa5ZFaRRxEKVIKkOL5blcG5Hg0UpYgsVYPhuVwpDaco87eSYyFyHRTkscoslcEQ/nMExYjYIwygyWw0k2c4iDCVgtkiXJ3CyT4yCUTxDCMdI9BsP5LjSLQTEMI40m0IxAd4YxYjgI51NsXhVjWIg8leVp1lzLJYnYIpkhCWRzG2HxqDWS4SEcbJXlUPZAhGXAJC2TxQD+O8AwuQ6i8HMGcIItRKDwD4BcBIsx3j7HiCcTw8BeBvAeLoS4RBMiwC6JITgZwEjLHgEoW4JglBzD4LcBozxNotBSM4eAPA7hBGiHMQo2QVjPDoWcU4yRJCmGCHgJYdRODHC4H8ewRGWhLHsL0H4XgvASHMMkPY3g6C9FuB4P4+AvAJD0EwO4vA1CtHCBMDwEQZjmHwP4SIsgvh6D8C8II6h9geFyDUdQcwVCfF4G0C4xBvjBG2PwQg2RaBfH4MoTI9Rgh9HMNccY+BVDfC+NQL4kxFC3HOPgP4nwjjwBsIYAAnQ/hPHqP0XwiABgABABMdwgBHj1H0MACItgYAEHoAMPwUAWjbGAPEHgNhjAIE+IIKAFR9AVBwDAE44B+AbEEIULQDxgiBCAP4Q4Sx5CFBGOoCowhMBIBgEUAA2wMBCEMBQIQqA2gLBAKwGYhgoDRHuEIbAbwFigHoDMDYgwEBRCGFgOIERxAAH+IgMQiA3AMBwIsB4RhuAsEUCMUwKRZh4E2BMAwGBRiFAiFYFIRQRCtAmEUDgTQKCRDcC4YoSBeBUHGBAbgGBIiMFSI8XAqQNiGG4HARwEQ/A1GMKEJQVRDjYHUBsSI5gejHFQPkDoBQWB2BUMMeAeAHCJASCEUgLBDiQAGHQMQig0gGB4AcHghBJAyCEEkCoaQMApFILwR4kg5BuCUJUHILwRgQHiFMSQUhHBKCSAkFgMQig8EYBUCQPA5hICSFpKgeBzCUHEKANwjAwhTBAMcPgrRLgjHkF0ZYmQWgtFKKwW4lApDCCuEwLIYQXjFCYLUCochwB" + ;
"yGWMkTQOxzB4HKJccQrgyhMGSJ0Go5hCDTA2MMDwZRKgxH2DQEw+ByicBmIQVYTRYhXBsMUMIVhNjjEkHUZw0RvA5BOCgY4FRJiiDqE4BI7QcCmGSFMToExogVCcOkbIOxzhaBmJ0AYnA1AMdoCsKIJQEgfHoB4QQDAJCtCGGgHoEQMDiFtPIKQrAdDNHiAMEAICAgA==") to Nothing
	Send Destroy to hoAppearance
	Set ComSelBackColor to |CI$1000000
	Set ComSelForeColor to (RGB(0,0,0))
	Set ComBackColorHeader to |CI$2000000
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(2,0,0))
	Set ComBackColorSortBar to (ComBackColor(Self))
	Send ComEndUpdate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "RO\CJ"
	Send ComEndUpdate
End_Procedure
40
How can I format a column so it display its content in a different way
// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Set ComContinueColumnScroll of hoView to False
		Set ComScrollBySingleLine of hoView to True
		Set ComDrawGridLines of hoView to OLEexAllLines
		Send ComEnsureVisibleColumn of hoView "Date"
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Variant voColumns1
		Get ComColumns of hoView to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
	Get ComItem of hoColumns1 "Date" to Nothing		Send Destroy to hoColumns1
		Send Destroy to hoView
		Variant voColumns2
		Get ComColumns to voColumns2
		Handle hoColumns2
		Get Create (RefClass(cComColumns)) to hoColumns2
		Set pvComObject of hoColumns2 to voColumns2
	Get ComItem of hoColumns2 "Function" to Nothing		Send Destroy to hoColumns2
		Variant voColumns3
		Get ComColumns to voColumns3
		Handle hoColumns3
		Get Create (RefClass(cComColumns)) to hoColumns3
		Set pvComObject of hoColumns3 to voColumns3
	Get ComItem of hoColumns3 "Coordinates" to Nothing		Send Destroy to hoColumns3
		Variant voColumns4
		Get ComColumns to voColumns4
		Handle hoColumns4
		Get Create (RefClass(cComColumns)) to hoColumns4
		Set pvComObject of hoColumns4 to voColumns4
	Get ComItem of hoColumns4 "Status" to Nothing		Send Destroy to hoColumns4
		Send ComEndUpdate
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComFitCascadeColumns to 7
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComScrollWidth to 4
	Set ComScrollHeight to 4
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\OR"
	Send ComEndUpdate
End_Procedure
39
How can I add a position column

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComAdd of hoColumns "Pos" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComWidth of hoColumn to 32
				Set ComAllowSizing of hoColumn to False
				Set ComPosition of hoColumn to 0
				Set ComFormatColumn of hoColumn to "1 pos ``"
				Set ComDef of hoColumn OLEexCellBackColor to 15790320
				Set ComAlignment of hoColumn to OLERightAlignment
				Set ComHeaderAlignment of hoColumn to (ComAlignment(hoColumn))
				Set ComDef of hoColumn OLEexCellPaddingRight to 2
				Set ComDef of hoColumn OLEexCellPaddingLeft to 2
				Set ComDef of hoColumn OLEexHeaderPaddingLeft to 2
				Set ComDef of hoColumn OLEexHeaderPaddingRight to 2
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Set ComCountLockedColumns of hoView to 1
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\IA"
	Send ComEndUpdate
End_Procedure
38
How can I display icons or images

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComEnsureVisibleColumn of hoView "Function"
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
	Get ComItem of hoColumns "Function" to Nothing		Send Destroy to hoColumns
		Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\MN"
	Send ComEndUpdate
End_Procedure
37
How can I turn-on the control's status bar

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Set ComStatusBarLabel to (ComFormatABC(Self,"`<b>` + ( value replace `\\` with ` </b><font ;6><off 4>` )",(ComName(Self)),Nothing,Nothing))
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Set ComStatusBarLabel to (ComFormatABC(Self,"`<b>` + ( value replace `\\` with ` </b><font ;6><off 4>` )",(ComName(Self)),Nothing,Nothing))
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarHeight to 24
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComName to "Romania\Cluj\Baciu*"
	Send ComEndUpdate
End_Procedure
36
How can I disable incremental searching
// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComAutoSearch of hoView to False
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
35
ScrollBar extension

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(2,0,0))
	Send ComEndUpdate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voColumns1
		Get ComColumns of hoView1 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn1
			Get ComItem of hoColumns1 "CountryName" to voColumn1
			Handle hoColumn1
			Get Create (RefClass(cComColumn)) to hoColumn1
			Set pvComObject of hoColumn1 to voColumn1
				Variant voColumn2
				Get ComItem of hoColumn1 "CountryName" to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComSortOrder of hoColumn2 to OLESortAscending
				Send Destroy to hoColumn2
			Send Destroy to hoColumn1
		Send Destroy to hoColumns1
	Send Destroy to hoView1
	Variant voView2
	Get ComDefaultView Nothing to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Variant voView3
		Get ComNextView of hoView2 to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Variant voColumns2
			Get ComColumns of hoView3 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn3
				Get ComItem of hoColumns2 "StateName" to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Variant voColumn4
					Get ComItem of hoColumn3 "StateName" to voColumn4
					Handle hoColumn4
					Get Create (RefClass(cComColumn)) to hoColumn4
					Set pvComObject of hoColumn4 to voColumn4
						Set ComSortOrder of hoColumn4 to OLESortAscending
					Send Destroy to hoColumn4
				Send Destroy to hoColumn3
			Send Destroy to hoColumns2
		Send Destroy to hoView3
	Send Destroy to hoView2
	Variant voView4
	Get ComDefaultView Nothing to voView4
	Handle hoView4
	Get Create (RefClass(cComView)) to hoView4
	Set pvComObject of hoView4 to voView4
		Variant voView5
		Get ComNextView of hoView4 to voView5
		Handle hoView5
		Get Create (RefClass(cComView)) to hoView5
		Set pvComObject of hoView5 to voView5
			Variant voView6
			Get ComNextView of hoView5 to voView6
			Handle hoView6
			Get Create (RefClass(cComView)) to hoView6
			Set pvComObject of hoView6 to voView6
				Set ComColumnAutoResize of hoView6 to False
				Variant voColumns3
				Get ComColumns of hoView6 to voColumns3
				Handle hoColumns3
				Get Create (RefClass(cComColumns)) to hoColumns3
				Set pvComObject of hoColumns3 to voColumns3
					Variant voColumn5
					Get ComItem of hoColumns3 "Name" to voColumn5
					Handle hoColumn5
					Get Create (RefClass(cComColumn)) to hoColumn5
					Set pvComObject of hoColumn5 to voColumn5
						Set ComSortOrder of hoColumn5 to OLESortAscending
						Set ComWidth of hoColumn5 to 128
					Send Destroy to hoColumn5
				Send Destroy to hoColumns3
				Variant voItems
				Get ComItems of hoView6 to voItems
				Handle hoItems
				Get Create (RefClass(cComItems)) to hoItems
				Set pvComObject of hoItems to voItems
					Set ComSelectItem of hoItems (ComFindItem(hoItems,"Anchorage","Name",Nothing)) to True
				Send Destroy to hoItems
			Send Destroy to hoView6
		Send Destroy to hoView5
	Send Destroy to hoView4
	Send ComEndUpdate
End_Procedure
34
How can I access the next/prev/parent/child view

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitEqualCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "RO\CJ"
	Variant voView1
	Get ComDefaultView Nothing to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Variant voColumns1
		Get ComColumns of hoView1 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Variant voColumn1
			Get ComItem of hoColumns1 "CountryName" to voColumn1
			Handle hoColumn1
			Get Create (RefClass(cComColumn)) to hoColumn1
			Set pvComObject of hoColumn1 to voColumn1
				Variant voColumn2
				Get ComItem of hoColumn1 "CountryName" to voColumn2
				Handle hoColumn2
				Get Create (RefClass(cComColumn)) to hoColumn2
				Set pvComObject of hoColumn2 to voColumn2
					Set ComSortOrder of hoColumn2 to OLESortAscending
				Send Destroy to hoColumn2
			Send Destroy to hoColumn1
		Send Destroy to hoColumns1
	Send Destroy to hoView1
	Variant voView2
	Get ComDefaultView Nothing to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Variant voView3
		Get ComNextView of hoView2 to voView3
		Handle hoView3
		Get Create (RefClass(cComView)) to hoView3
		Set pvComObject of hoView3 to voView3
			Variant voColumns2
			Get ComColumns of hoView3 to voColumns2
			Handle hoColumns2
			Get Create (RefClass(cComColumns)) to hoColumns2
			Set pvComObject of hoColumns2 to voColumns2
				Variant voColumn3
				Get ComItem of hoColumns2 "StateName" to voColumn3
				Handle hoColumn3
				Get Create (RefClass(cComColumn)) to hoColumn3
				Set pvComObject of hoColumn3 to voColumn3
					Variant voColumn4
					Get ComItem of hoColumn3 "StateName" to voColumn4
					Handle hoColumn4
					Get Create (RefClass(cComColumn)) to hoColumn4
					Set pvComObject of hoColumn4 to voColumn4
						Set ComSortOrder of hoColumn4 to OLESortAscending
					Send Destroy to hoColumn4
				Send Destroy to hoColumn3
			Send Destroy to hoColumns2
		Send Destroy to hoView3
	Send Destroy to hoView2
	Variant voView4
	Get ComDefaultView Nothing to voView4
	Handle hoView4
	Get Create (RefClass(cComView)) to hoView4
	Set pvComObject of hoView4 to voView4
		Variant voView5
		Get ComNextView of hoView4 to voView5
		Handle hoView5
		Get Create (RefClass(cComView)) to hoView5
		Set pvComObject of hoView5 to voView5
			Variant voView6
			Get ComNextView of hoView5 to voView6
			Handle hoView6
			Get Create (RefClass(cComView)) to hoView6
			Set pvComObject of hoView6 to voView6
				Send ComBeginUpdate of hoView6
				Set ComColumnAutoResize of hoView6 to False
				Variant voColumns3
				Get ComColumns of hoView6 to voColumns3
				Handle hoColumns3
				Get Create (RefClass(cComColumns)) to hoColumns3
				Set pvComObject of hoColumns3 to voColumns3
					Variant voColumn5
					Get ComItem of hoColumns3 "Name" to voColumn5
					Handle hoColumn5
					Get Create (RefClass(cComColumn)) to hoColumn5
					Set pvComObject of hoColumn5 to voColumn5
						Set ComWidth of hoColumn5 to 128
						Set ComSortOrder of hoColumn5 to OLESortAscending
					Send Destroy to hoColumn5
				Send Destroy to hoColumns3
				Set ComSingleSort of hoView6 to False
				Set ComAllowGroupBy of hoView6 to True
				Variant voColumns4
				Get ComColumns of hoView6 to voColumns4
				Handle hoColumns4
				Get Create (RefClass(cComColumns)) to hoColumns4
				Set pvComObject of hoColumns4 to voColumns4
					Variant voColumn6
					Get ComItem of hoColumns4 "Status" to voColumn6
					Handle hoColumn6
					Get Create (RefClass(cComColumn)) to hoColumn6
					Set pvComObject of hoColumn6 to voColumn6
						Set ComSortOrder of hoColumn6 to OLESortDescending
					Send Destroy to hoColumn6
				Send Destroy to hoColumns4
				Variant v
				Variant voColumns5
				Get ComColumns of hoView6 to voColumns5
				Handle hoColumns5
				Get Create (RefClass(cComColumns)) to hoColumns5
				Set pvComObject of hoColumns5 to voColumns5
					Variant voColumn7
					Get ComItem of hoColumns5 "Name" to voColumn7
					Handle hoColumn7
					Get Create (RefClass(cComColumn)) to hoColumn7
					Set pvComObject of hoColumn7 to voColumn7
						Get ComIndex of hoColumn7 to v
					Send Destroy to hoColumn7
				Send Destroy to hoColumns5
				Set ComTreeColumnIndex of hoView6 to v
				Send ComEndUpdate of hoView6
			Send Destroy to hoView6
		Send Destroy to hoView5
	Send Destroy to hoView4
	Send ComEndUpdate
End_Procedure
33
Predefined Keywords of ShowContextMenu property

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Send Destroy to hoView
	Set ComStatusBarLabel to (ComFormatABC(Self,"`<b>` + ( value replace `\\` with ` </b><font ;6><off 4>` )",(ComName(Self)),Nothing,Nothing))
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Set ComStatusBarLabel to (ComFormatABC(Self,"`<b>` + ( value replace `\\` with ` </b><font ;6><off 4>` )",(ComName(Self)),Nothing,Nothing))
	Set ComExecuteContextMenu to 0
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComAllowSplitView to OLEexAllowOneSplitView
	Set ComFitCascadeColumns to 3
	Set ComMode to OLEexSplitEqualCascadeMode
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarHeight to 24
	Set ComScrollPartVisible OLEexVScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexHScroll OLEexExtentThumbPart to True
	Set ComScrollPartVisible OLEexScroll OLEexExtentThumbPart to True
	Set ComScrollWidth to 4
	Set ComBackground OLEexVSBack to (RGB(240,240,240))
	Set ComBackground OLEexVSThumb to (RGB(128,128,128))
	Set ComScrollHeight to 4
	Set ComBackground OLEexHSBack to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexHSThumb to (ComBackground(Self,OLEexVSThumb))
	Set ComBackground OLEexScrollSizeGrip to (ComBackground(Self,OLEexVSBack))
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComBackground OLEexCSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexHSplitBar to (ComBackground(Self,OLEexSplitBar))
	Set ComBackground OLEexSplitBarSize to (RGB(2,0,0))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Set ComShowContextMenu to "`vlevels=` + vlevels + `,vlevel=` + vlevel + `,hlevels=` + hlevels + `,hlevel=` + hlevel + `,view=` + view "
	Set ComSplitViewHeight to "256"
	Send ComEndUpdate
End_Procedure
32
How can I display the identifiers of the control's context menu (debug)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Showln (ComExecuteContextMenu(Self))
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Set ComShowContextMenu to "[debug]Popup(Item 1[id=1001],Item 2[id=1002],Item 3[id=1003]),[sep],Exit[def][id=1000]"
	Send ComEndUpdate
End_Procedure
31
ShowContextMenu usage

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Showln (ComExecuteContextMenu(Self))
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Set ComShowContextMenu to "Popup(Item 1[id=1001],Item 2[id=1002],Item 3[id=1003]),[sep],Exit[def][id=1000]"
	Send ComEndUpdate
End_Procedure
30
How can I resize automatically all views, when the control is resized

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to (OLEexAutoFitOnResizeClient + OLEexSplitFixCascadeMode)
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
29
How can I hide some columns

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	// Columns("StateCode").Visible = False
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "CountryCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComVisible of hoColumn to False
			Send Destroy to hoColumn
		Send Destroy to hoColumns
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
28
Is it possible to disable resizing the cascade columns

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComMode to (OLEexAutoFitOnResizeClient + OLEexDisableResizeCascadeColumns + OLEexSplitFixCascadeMode)
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
27
SplitFixCascadeMode Mode

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
26
FixCascadeMode Mode

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDefColumnWidth to 96
	Set ComMode to OLEexFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
25
SplitEqualCascadeMode Mode

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComMode to OLEexSplitEqualCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
24
Default Mode

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComBackground OLEexSplitBar to (RGB(196,196,196))
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
23
SingleCascadeMode ( single-view )

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComDataSource of hoView to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Cities Where CountryCode = 'RO' "
		Set ComAllowGroupBy of hoView to True
		Set ComSortBarVisible of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Variant voColumn
			Get ComItem of hoColumns "StateCode" to voColumn
			Handle hoColumn
			Get Create (RefClass(cComColumn)) to hoColumn
			Set pvComObject of hoColumn to voColumn
				Set ComSortOrder of hoColumn to OLESortAscending
			Send Destroy to hoColumn
		Send Destroy to hoColumns
		Set ComName of hoView to "Name"
	Send Destroy to hoView
	Set ComName to "Isaccea"
	Send ComEndUpdate
End_Procedure
22
How can I display the current selection, as a path

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Set ComStatusBarLabel to (ComName(Self))
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Set ComStatusBarLabel to (ComName(Self))
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
21
How can I add multiple-views to the control

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitFixCascadeMode
	Set ComDataSource to "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb;Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName >>> Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name >>> Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name"
	Set ComSelect to "US\AK"
	Send ComEndUpdate
End_Procedure
20
I wish I select items based on names, rather than keys. Is that possible

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant v
			Variant vA
			Variant voView1
			Get ComView to voView1
			Handle hoView1
			Get Create (RefClass(cComView)) to hoView1
			Set pvComObject of hoView1 to voView1
				Get ComTag of hoView1 to vA
			Send Destroy to hoView1
			Get ComFormatABC "not(A = `City`)" vA Nothing Nothing to v
		Set ComColumnAutoResize of hoView to v
	Send Destroy to hoView
	Variant label
	Get ComFormatABC "`<b>Select = </b>` + value" (ComSelect(Self)) Nothing Nothing to label
	Get ComFormatABC "A + `<br>` + `<b>Name = </b>` + B replace `|` with ` `" label (ComName(Self)) Nothing to label
	Set ComStatusBarLabel to label
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Get ComFormatABC "`<b>Select = </b>` + value" (ComSelect(Self)) Nothing Nothing to label
	Get ComFormatABC "A + `<br>` + `<b>Name = </b>` + B replace `|` with ` `" label (ComName(Self)) Nothing to label
	Set ComStatusBarLabel to label
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitEqualCascadeMode
	Set ComStatusBarVisible to (OLEexStatusBarWordWrap + OLEexStatusBarAnchorTop)
	Variant ds
	Move "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" to ds
	Variant dm1
	Move "Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName" to dm1
	Get ComFormatABC "A + `;` + B" ds dm1 Nothing to ds
	Variant dm2
	Move "Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name" to dm2
	Get ComFormatABC "A + ` >>> ` + B" ds dm2 Nothing to ds
	Variant dm3
	Move "Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name" to dm3
	Get ComFormatABC "A + ` >>> ` + B" ds dm3 Nothing to ds
	Set ComDataSource to ds
	Set ComName to "Romania\Cluj\Baciu*"
	Send ComEndUpdate
End_Procedure
19
I've noticed that I can't select multiple items. How can I do that

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant bColumnAutoResize
	Variant vA
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Get ComTag of hoView to vA
	Send Destroy to hoView
	Get ComFormatABC "not(A = `City`)" vA Nothing Nothing to bColumnAutoResize
	Variant voView1
	Get ComView to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Set ComSingleSel of hoView1 to False
		Set ComColumnAutoResize of hoView1 to bColumnAutoResize
	Send Destroy to hoView1
	Variant label
	Get ComFormatABC "`<b>Select = </b>` + value" (ComSelect(Self)) Nothing Nothing to label
	Get ComFormatABC "A + `<br>` + `<b>Name = </b>` + B replace `|` with ` `" label (ComName(Self)) Nothing to label
	Set ComStatusBarLabel to label
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Get ComFormatABC "`<b>Select = </b>` + value" (ComSelect(Self)) Nothing Nothing to label
	Get ComFormatABC "A + `<br>` + `<b>Name = </b>` + B replace `|` with ` `" label (ComName(Self)) Nothing to label
	Set ComStatusBarLabel to label
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitEqualCascadeMode
	Set ComStatusBarVisible to (OLEexStatusBarWordWrap + OLEexStatusBarAnchorTop)
	Set ComStatusBarHeight to 48
	Variant ds
	Move "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" to ds
	Variant dm1
	Move "Member=Select * FROM Countries;Key=CountryCode;Tag=Country;Name=CountryName" to dm1
	Get ComFormatABC "A + `;` + B" ds dm1 Nothing to ds
	Variant dm2
	Move "Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Name=StateName;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City;Name=Name" to dm2
	Get ComFormatABC "A + ` >>> ` + B" ds dm2 Nothing to ds
	Variant dm3
	Move "Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City;Name=Name" to dm3
	Get ComFormatABC "A + ` >>> ` + B" ds dm3 Nothing to ds
	Set ComDataSource to ds
	Set ComSelect to "RO\CJ|D*"
	Send ComEndUpdate
End_Procedure
18
How do I programmatically selects a path/item

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant bColumnAutoResize
	Variant vA
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Get ComTag of hoView to vA
	Send Destroy to hoView
	Get ComFormatABC "not(A = `City`)" vA Nothing Nothing to bColumnAutoResize
	Variant voView1
	Get ComView to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Set ComColumnAutoResize of hoView1 to bColumnAutoResize
	Send Destroy to hoView1
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Variant v
		Get ComSelect to v
	Set ComStatusBarLabel to v
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSplitEqualCascadeMode
	Set ComStatusBarVisible to OLEexStatusBarAnchorBottom
	Variant ds
	Move "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" to ds
	Variant dm1
	Move "Member=Select * FROM Countries;Key=CountryCode;Tag=Country" to dm1
	Get ComFormatABC "A + `;` + B" ds dm1 Nothing to ds
	Variant dm2
	Move "Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City" to dm2
	Get ComFormatABC "A + ` >>> ` + B" ds dm2 Nothing to ds
	Variant dm3
	Move "Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City" to dm3
	Get ComFormatABC "A + ` >>> ` + B" ds dm3 Nothing to ds
	Set ComDataSource to ds
	Set ComSelect to "RO\CJ"
	Send ComEndUpdate
End_Procedure
17
DataSource/DataMember/Key/Tag

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant vA
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Get ComDataSource of hoView to vA
	Send Destroy to hoView
	Set ComStatusBarLabel to (ComFormatABC(Self,"value replace `data source` with `<b><fgcolor=808080>Source</fgcolor></b>` replace `Source` with `<b><fgcolor=808080>Source</fgcolor></b>` replace `Member` with `<b><fgcolor=808080>Member</fgcolor></b>` replace `Key` with `<b><fgcolor=808080>Key</fgcolor></b>` replace `Tag` with `<b><fgcolor=808080>Tag</fgcolor></b>` replace `;` with `;<br>`",vA,Nothing,Nothing))
	Variant bColumnAutoResize
	Variant vA1
	Variant voView1
	Get ComView to voView1
	Handle hoView1
	Get Create (RefClass(cComView)) to hoView1
	Set pvComObject of hoView1 to voView1
		Get ComTag of hoView1 to vA1
	Send Destroy to hoView1
	Get ComFormatABC "not(A = `City`)" vA1 Nothing Nothing to bColumnAutoResize
	Variant nWidth
	Variant vA2
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Get ComTag of hoView2 to vA2
	Send Destroy to hoView2
	Variant vB
	Variant voView3
	Get ComView to voView3
	Handle hoView3
	Get Create (RefClass(cComView)) to hoView3
	Set pvComObject of hoView3 to voView3
		Get ComWidthToFit of hoView3 to vB
	Send Destroy to hoView3
	Variant vC
	Variant voView4
	Get ComView to voView4
	Handle hoView4
	Get Create (RefClass(cComView)) to hoView4
	Set pvComObject of hoView4 to voView4
		Get ComWidth of hoView4 to vC
	Send Destroy to hoView4
	Get ComFormatABC "A = `City` ? B : C" vA2 vB vC to nWidth
	Variant voView5
	Get ComView to voView5
	Handle hoView5
	Get Create (RefClass(cComView)) to hoView5
	Set pvComObject of hoView5 to voView5
		Set ComColumnAutoResize of hoView5 to bColumnAutoResize
		Set ComWidth of hoView5 to nWidth
	Send Destroy to hoView5
End_Procedure

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarHeight to 58
	Set ComStatusBarVisible to (OLEexStatusBarWordWrap + OLEexStatusBarAnchorTop)
	Variant ds
	Move "Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" to ds
	Variant dm1
	Move "Member=Select * FROM Countries;Key=CountryCode;Tag=Country" to dm1
	Get ComFormatABC "A + `;` + B" ds dm1 Nothing to ds
	Variant dm2
	Move "Member=Select * FROM States WHERE CountryCode IN (<%Parent.CountryCode%>);Key=StateCode;Tag=State ||| Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.CountryCode%>);Tag=City" to dm2
	Get ComFormatABC "A + ` >>> ` + B" ds dm2 Nothing to ds
	Variant dm3
	Move "Member=Select * FROM Cities WHERE CountryCode IN (<%Parent.Parent.CountryCode%>) AND StateCode IN (<%Parent.StateCode%>);Tag=City" to dm3
	Get ComFormatABC "A + ` >>> ` + B" ds dm3 Nothing to ds
	Set ComDataSource to ds
	Send ComEndUpdate
End_Procedure
16
DataSource (view, data source, data member, ACCDB)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could "Data Source=...;Data Member=..." or "Source=...;Member=..." "
	Set ComDefColumnWidth to 336
	Variant ds
	Move "Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" to ds
	Variant dm
	Move "Data Member=Select * FROM Countries" to dm
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant v
			Get ComFormatABC "A + `;` + B" ds dm Nothing to v
		Set ComDataSource of hoView to v
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
15
DataSource (view, data source, data member, MDB)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could "Data Source=...;Data Member=..." or "Source=...;Member=..." "
	Set ComDefColumnWidth to 336
	Variant ds
	Move "Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb" to ds
	Variant dm
	Move "Data Member=Select * FROM Countries" to dm
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant v
			Get ComFormatABC "A + `;` + B" ds dm Nothing to v
		Set ComDataSource of hoView to v
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
14
DataSource (view, ADODB, ACCDB)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be string (Source/Member), ADO or DAO objects"
	Set ComDefColumnWidth to 336
	Variant ado
	Get Comcreateobject "ADODB.Recordset" to ado
		Send ComOpen "Countries" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComDataSource of hoView to ado
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
13
DataSource (view, ADODB, MDB)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be string (Source/Member), ADO or DAO objects"
	Set ComDefColumnWidth to 336
	Variant ado
	Get Comcreateobject "ADODB.Recordset" to ado
		Send ComOpen "Countries" "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComDataSource of hoView to ado
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
12
DataSource (control, data source, data member, ACCDB)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could "Data Source=...;Data Member=..." or "Source=...;Member=..." "
	Set ComDefColumnWidth to 336
	Variant ds
	Move "Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" to ds
	Variant dm
	Move "Data Member=Select * FROM Countries" to dm
	Set ComDataSource to (ComFormatABC(Self,"A + `;` + B",ds,dm,Nothing))
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
11
DataSource (control, data source, data member, MDB)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could "Data Source=...;Data Member=..." or "Source=...;Member=..." "
	Set ComDefColumnWidth to 336
	Variant ds
	Move "Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb" to ds
	Variant dm
	Move "Data Member=Select * FROM Countries" to dm
	Set ComDataSource to (ComFormatABC(Self,"A + `;` + B",ds,dm,Nothing))
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
10
DataSource (control, ADODB, ACCDB)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be string (Source/Member), ADO or DAO objects"
	Set ComDefColumnWidth to 336
	Variant ado
	Get Comcreateobject "ADODB.Recordset" to ado
		Send ComOpen "Countries" "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.accdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to ado
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
9
DataSource (control, ADODB, MDB)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be string (Source/Member), ADO or DAO objects"
	Set ComDefColumnWidth to 336
	Variant ado
	Get Comcreateobject "ADODB.Recordset" to ado
		Send ComOpen "Countries" "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExCascadeTree\Sample\Access\cities.mdb" OLEadOpenStatic OLEadLockOptimistic Nothing
	Set ComDataSource to ado
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
8
DataSource (view, XMLDOMDocument)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be a XML file name, a URL, an IStream, an IXMLDOMDocument"
	Set ComDefColumnWidth to 336
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant xml
		Get Comcreateobject of hoView "MSXML.DOMDocument" to xml
			Get Comload of hoView "C:\Program Files\Exontrol\ExCascadeTree\Sample\Testing.xml" to Nothing
		Send Destroy to hoView
		Set ComDataSource to xml
		Set ComColumnAutoResize to True
	Send ComEndUpdate
End_Procedure
7
DataSource (view, XML, file)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be a XML file name, a URL, an IStream, an IXMLDOMDocument"
	Set ComDefColumnWidth to 336
	Variant voView
	Get ComDefaultView Nothing to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComDataSource of hoView to "http://www.exontrol.net/testing.xml"
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
6
DataSource (control, XMLDOMDocument)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be a XML file name, a URL, an IStream, an IXMLDOMDocument"
	Set ComDefColumnWidth to 336
	Variant xml
	Get Comcreateobject "MSXML.DOMDocument" to xml
		Get Comload "C:\Program Files\Exontrol\ExCascadeTree\Sample\Testing.xml" to Nothing
	Set ComDataSource to xml
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
5
DataSource (control, XML, file)

// An internal error occurs.
Procedure OnComError Integer   llError String   llDescription
	Forward Send OnComError llError llDescription
	Showln "Error" llDescription
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComStatusBarVisible to OLEexStatusBarAnchorTop
	Set ComStatusBarLabel to "<b>DataSource</b> could be a XML file name, a URL, an IStream, an IXMLDOMDocument"
	Set ComDefColumnWidth to 336
	Set ComDataSource to "http://www.exontrol.net/testing.xml"
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Set ComColumnAutoResize of hoView to True
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
4
How can I get the selected items (sample 1)

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant v
		Variant voView1
		Get ComParentView of hoView to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Get ComValue of hoView1 Nothing to v
		Send Destroy to hoView1
		Variant k
		Move v to k
		Send ComBeginUpdate of hoView
		Set ComColumnAutoResize of hoView to True
		Set ComKey of hoView to -1
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Get ComAdd of hoColumns k to Nothing
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Variant vValue
				Get ComFormatABC "A + `-> Sub-Item 1`" k Nothing Nothing to vValue
			Get ComAddItem of hoItems vValue to Nothing
			Variant vValue1
				Get ComFormatABC "A + `-> Sub-Item 2`" k Nothing Nothing to vValue1
			Get ComAddItem of hoItems vValue1 to Nothing
			Variant vValue2
				Get ComFormatABC "A + `-> Sub-Item 3`" k Nothing Nothing to vValue2
			Get ComAddItem of hoItems vValue2 to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewEndChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewEndChanging llOperation
	Showln "End" llOperation
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Variant voItems1
		Get ComItems of hoView2 to voItems1
		Handle hoItems1
		Get Create (RefClass(cComItems)) to hoItems1
		Set pvComObject of hoItems1 to voItems1
			Showln "FocusItem" (ComCellCaption(hoItems1,(ComFocusItem(hoItems1)),0))
			Showln "SelectedItem" (ComCellCaption(hoItems1,(ComSelectedItem(hoItems1,0)),0))
		Send Destroy to hoItems1
	Send Destroy to hoView2
End_Procedure

// Occurs once the user is about to change the view.
Procedure OnComViewStartChanging OLEViewOperationEnum   llOperation
	Forward Send OnComViewStartChanging llOperation
	Showln "Start" llOperation
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voView3
	Get ComView to voView3
	Handle hoView3
	Get Create (RefClass(cComView)) to hoView3
	Set pvComObject of hoView3 to voView3
		Send ComBeginUpdate of hoView3
		Set ComColumnAutoResize of hoView3 to True
		Variant voColumns1
		Get ComColumns of hoView3 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Get ComAdd of hoColumns1 "Default" to Nothing
		Send Destroy to hoColumns1
		Set ComKey of hoView3 to 0
		Set ComLinesAtRoot of hoView3 to OLEexLinesAtRoot
		Variant voItems2
		Get ComItems of hoView3 to voItems2
		Handle hoItems2
		Get Create (RefClass(cComItems)) to hoItems2
		Set pvComObject of hoItems2 to voItems2
			Get ComAddItem of hoItems2 "Item A" to Nothing
			Set ComSelectItem of hoItems2 (ComAddItem(hoItems2,"Item B")) to True
			Get ComAddItem of hoItems2 "Item C" to Nothing
		Send Destroy to hoItems2
		Send ComEndUpdate of hoView3
	Send Destroy to hoView3
	Send ComEndUpdate
End_Procedure
3
Can I use this control as a simple tree

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Set ComMode to OLEexSingleCascadeMode
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Send ComBeginUpdate of hoView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Get ComAdd of hoColumns "Default" to Nothing
		Send Destroy to hoColumns
		Set ComKey of hoView to -1
		Set ComLinesAtRoot of hoView to OLEexLinesAtRoot
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Get ComAddItem of hoItems "Item A" to Nothing
			Get ComInsertItem of hoItems (ComAddItem(hoItems,"Item B")) "Child" to Nothing
			Get ComAddItem of hoItems "Item C" to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
	Send ComEndUpdate
End_Procedure
2
How can I use this control

// A view has been created.
Procedure OnComCreateView Variant   llView
	Forward Send OnComCreateView llView
	Variant voView
	Get ComView to voView
	Handle hoView
	Get Create (RefClass(cComView)) to hoView
	Set pvComObject of hoView to voView
		Variant v
		Variant voView1
		Get ComParentView of hoView to voView1
		Handle hoView1
		Get Create (RefClass(cComView)) to hoView1
		Set pvComObject of hoView1 to voView1
			Get ComValue of hoView1 Nothing to v
		Send Destroy to hoView1
		Variant k
		Move v to k
		Send ComBeginUpdate of hoView
		Set ComColumnAutoResize of hoView to True
		Variant voColumns
		Get ComColumns of hoView to voColumns
		Handle hoColumns
		Get Create (RefClass(cComColumns)) to hoColumns
		Set pvComObject of hoColumns to voColumns
			Get ComAdd of hoColumns k to Nothing
		Send Destroy to hoColumns
		Variant voItems
		Get ComItems of hoView to voItems
		Handle hoItems
		Get Create (RefClass(cComItems)) to hoItems
		Set pvComObject of hoItems to voItems
			Variant vValue
				Get ComFormatABC "A + `-> Sub-Item 1`" k Nothing Nothing to vValue
			Get ComAddItem of hoItems vValue to Nothing
			Variant vValue1
				Get ComFormatABC "A + `-> Sub-Item 2`" k Nothing Nothing to vValue1
			Get ComAddItem of hoItems vValue1 to Nothing
			Variant vValue2
				Get ComFormatABC "A + `-> Sub-Item 3`" k Nothing Nothing to vValue2
			Get ComAddItem of hoItems vValue2 to Nothing
		Send Destroy to hoItems
		Send ComEndUpdate of hoView
	Send Destroy to hoView
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComBeginUpdate
	Variant voView2
	Get ComView to voView2
	Handle hoView2
	Get Create (RefClass(cComView)) to hoView2
	Set pvComObject of hoView2 to voView2
		Send ComBeginUpdate of hoView2
		Set ComColumnAutoResize of hoView2 to True
		Variant voColumns1
		Get ComColumns of hoView2 to voColumns1
		Handle hoColumns1
		Get Create (RefClass(cComColumns)) to hoColumns1
		Set pvComObject of hoColumns1 to voColumns1
			Get ComAdd of hoColumns1 "Default" to Nothing
		Send Destroy to hoColumns1
		Set ComKey of hoView2 to 0
		Variant voItems1
		Get ComItems of hoView2 to voItems1
		Handle hoItems1
		Get Create (RefClass(cComItems)) to hoItems1
		Set pvComObject of hoItems1 to voItems1
			Get ComAddItem of hoItems1 "Item A" to Nothing
			Set ComSelectItem of hoItems1 (ComAddItem(hoItems1,"Item B")) to True
			Get ComAddItem of hoItems1 "Item C" to Nothing
		Send Destroy to hoItems1
		Send ComEndUpdate of hoView2
	Send Destroy to hoView2
	Send ComEndUpdate
End_Procedure
1
How do I change the control's background color
Procedure OnCreate
	Forward Send OnCreate
	Set ComBackColor to (RGB(240,240,240))
End_Procedure