Click here to Skip to main content
15,891,851 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi,
I didnt find any option in WPF to make an MDI form...
Why its not supported in WPF ?? Why should I use any third party libraries to do so ?
Are they purposefully deleted this feature ??
Posted
Comments
Ziee-M 12-Feb-14 10:29am    
exactly, microsoft is getting rid of MDI system. personnaly i find MDI system useful while many other developper don't.

Because it was a bad idea and people abuse the crap out it when they don't have to.

It was designed to be something like a "Notepad that can open multiple text files at once". Every "editor document" (MdiChild window) is supposed to do the exact same thing.

Too many noobs are using it like it is it's own windowing system where every "document" is a different type of window, such as a dialog box, options window, message box, and whatever, none of which have anything to do with some "document editor" editing the same kinds of documents.
 
Share this answer
 
Comments
Sergey Alexandrovich Kryukov 12-Feb-14 12:06pm    
Very good points, a 5.
I added some more information in my answer, please see.
—SA
The points explained in Solution 1 are very good.

MDI was a very naive design attempt introduced, if I am not much mistaken, with some versions of Word for Windows. Then there was a scandal where Microsoft was accused in using unofficial API which cannot be simulated on the application level, so Microsoft opened this API. Many naive uses (including myself, I must admit) was attracted by this opportunity, mostly because the number of available UI components for Windows was much more limited at that time.

If you look a round, you won't find any application using MDI, if we consider only the applications which are at least minimally "professional". Using MDI would be a sure way to scare off the users and face some unpleasant development problem. Aren't the inconveniences of MDI obvious enough?

I usually advise different alternatives; and the simplest and, at the same time, quite a robust one being the TabControl, both with WPF and System.Windows.Forms. There are a number of other designs. I discussed some of them in my past answers:
How to Create MDI Parent Window in WPF? [Solution 2],
Question on using MDI windows in WPF[^],
MDIContainer giving error[^],
How to set child forms maximized, last childform minimized[^].

—SA
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900