I have written a UserControl that is essentially a textbox but when clicked brings up a new form which is supposed to mimic a menu. This menu form ideally should be shown as ShowDialog.

I have a Sub Main() with line
Application.Run(New MainForm)

MainForm includes this UserControl. I had problems on firing the MouseEnter/Leave events when using ShowDialog, but not when using the Show method. However the important thing was to see this form on top of MainForm, which it did.

As it happens, one of the menus loads a new form - OptionsForm
and it does this by
OptionsForm = New OptionsForm

now OptionsForm also has a menu UserControl (with a different lot of menus)
If I show this form using the Show method, I cannot get it to sit on top of the OptionsForm
and if I use the ShowDialog method I get an error "Forms cannot own themselves or their owners"

Help, please
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

To do what you are trying to do please check out this site:

They have a nice class you can download to help with this sort of thing.
broadbentAuthor Commented:
Maybe, but it doesn't answer the question put.

As it happens, I think I now know the answer.
You can't use Showdialog on a form that is itself put up using ShowDialog. This must be a weakness in Visual Studio.
Closed, 250 points refunded.
The Experts Exchange
Community Support Moderator of all Ages

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic.NET

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.