views:

211

answers:

2

I have the following situation:

  1. ParentForm which opens WelcomeForm with ShowDialog.
  2. WelcomeForm contains a Button which opens NewProjectForm with ShowDialog
  3. When the user hits OK on NewProjectForm, a new project is created and both forms are closed (good behaviour)
  4. When the user hits CANCEL on NewProjectForm, both forms are closed (understandable behaviour, but not desireable).

I suspect this somehow has something to do with DialogResult (which is actually DialogResult.None on CANCEL and NewProjectForm)

How can I get the above situation without both forms closing?

Edit
Code used to open NewProjectForm:

ProjectNew projectNew = new ProjectNew();
projectNew.StartPosition = FormStartPosition.CenterParent;
projectNew.ShowDialog(this);

Code used to open WelcomeForm:

Welcome welcome = new Welcome();
welcome.StartPosition = FormStartPosition.CenterParent;
welcome.ShowDialog(this);

Note: NewProjectForm is not opened by Welcome but by ParentForm

Edit 2
Strange stuff; I created a new project with the same code/situation, which doesn't reproduce this behaviour...

A: 

This has been a long-standing issue that I have run up against a few times. This post has more discussion on it, as well as a workaround.

It has apparently been fixed in .Net 3.5 SP1 (I can no longer reproduce it after installing SP1), although I haven't seen any official word on that it was definitely fixed.

adrianbanks
I've seen that post and tried the workaround by setting DialogResult = DialogResult.None, but that doesn't help either.
MysticEarth
I am also unable to reproduce the behavior (tested both on .NET 3.5 SP1 and .NET 4 Beta 2)
Fredrik Mörk
A: 

Removed a couple of buttons, added a new one: solved.
So I think it should have been a DialogResult somehow, weird stuff.

MysticEarth