I don't think such event exists. If you want to find the style change in raw Windows API, you cal look at WS_* constants in Windows documentation. You will find only the extended style
WS_EX_MDICHILD
, but not a style associated with a MDI parent. As far as I remember the background, top-level window cannot be a MDI one (parent or child), instead, it has another window which take the whole area of the top-level window's client area. This is a special window called "MDI client"; and only the MDI client can be a parent of MDI children. Anyway, using P/Invoke is bad, because it breaks platform compatibility of your application.
Perhaps neither a Window message nor a .NET event you are hoping for is not found because nobody in clear memory and sober mind is not going to change this property value, forget about handling an event supposedly fired on this change. (By the way, as you want modify this property in your own code (only why?!), you could create your own event in your class derived from the
Form
.) Why?
I have a better idea: who needs MDI, ever? Why torturing yourself and scaring off your users?
Do yourself a great favor: do not use MDI at all. You can do much easier to implement design without it, with much better quality. MDI is highly discouraged even by Microsoft, in fact, Microsoft dropped it out of WPF and will hardly support it. More importantly, you will scare off all your users if you use MDI. Just don't. I can explain what to do instead.
Please see:
http://en.wikipedia.org/wiki/Multiple_document_interface#Disadvantages[
^],
How to Create MDI Parent Window in WPF?[
^].
I can tell you what you could use instead.
Please see my past answers:
Question on using MDI windows in WPF[
^],
MDIContainer giving error[
^],
How to set child forms maximized, last childform minimized[
^].
—SA