David,
Thank you for digging this out. I got your point very clear. However, I find a little hm.... unexpected, let's say, this behaviour. I have a feeling that, if I use .Objects, I have to remove somehow those objects in container.destroy. I have no idea how, though - maybe I'll spend some time trying, but not now. That Objects collection is very useful to create a general loop through container classes - .Buttons is optiongroup and commandgroup specific.
Anyway, it's a little late now - I already changed the code in all those places - I change the .Enabled property for every optionbutton. I'll leave as is for now - time is running. :)
Thank you so much.
>Grigore,
>
>It appears to be your use of the Objects[] collection that is causing the dangling internal reference.
>
>However, if you use the Buttons collection instead it works just fine. Change your Enabled_Assign to this:
>
>
LPARAMETERS vNewVal
>
>local i
>
>THIS.Enabled = m.vNewVal
>
>for i = 1 to this.ButtonCount
> this.Buttons[i].Enabled = m.vNewVal
>endfor
Grigore Dolghin
Class Software.