>Hi,
>
>> This is my code:
>
>>Thisform.grid.column1.ControlSource = "curTest.lSelected"
>>IF TYPE('Thisform.grid.column1.text1') = 'O'
>> Thisform.grid.column1.AddObject('chklSelected','acc_checkbox')
>> Thisform.grid.column1.chklSelected.Visible = .T.
>> Thisform.grid.column1.CurrentControl = 'chklSelected'
>> Thisform.grid.column1.RemoveObject('text1')
>> Thisform.grid.column1.Sparse = .F.
>>ENDIF
>
>>In the debugger TYPE('.column1.text1') is showing 'O' after this code runs.
>
>I ran this on a clean form/grid and got TYPE() 'U'. The only thing I changed was 'acc_checkbox' to 'checkbox' - must be something else going on....
I've seen, in some cases, the object being there but actually null - for instance, when the grid class was defined with .columncount=9, and then I set it to 3. In the debugger you still see column4...column9, but they're null.
Could be this is one of such things, when an object member can't be properly removed under certain circumstances. My guess is that it matters whether it existed when the parent's .init() completed. I know I don't see it if I've removed it on time.