Thanks, Kevin. I will try the latter approach and give you a holler if I have any trouble.
>Linda,
>
>>The only other choice I have been able to figure out is to use object.dispose() to get rid of pages that I don't want them to see. However, this doesn't help if I want them to be able to have read-only access. It is also a headache because then I have to check all my set up code, such as initializing combo box indexes, to make sure it's not trying to do something on a tab page that has been disposed of. I did get this to work with minimum headache by just moving the code to the end of all the other initialization. A bit inefficient on the code side but easier for maintenance.
>>
>>Suggestions? Thanks.
>
>I took a look at the source code and notice the code in mmPanel.SetAccessReadOnly() was setting Enabled to true rather than false. I changed the code to the following and it works fine now:
>
>
public virtual void SetAccessReadOnly()
>{
> this.Enabled = false;
> this.Visible = true;
>}
>
>I have made this change for the upcoming 3.6 release, but for now there are two approaches you can take:
>
>1. I can show you how to change the source code and recompile the current version you have
>2. You can create a subclass of mmPanel and put this code in an override of SetAccessReadOnly().
>
>Let me know which approach you would like to take...
>
>Best Regards,
Linda Harmes
HiBit Technologies, Inc.