C#のMDIフォームは、結構よけいなことをしてくれてしまいます。
どうも、Ctrl+Tabで前のウィンドウに、Ctrl+Shift+Tabで次のウィンドウに移動する機能がくっついているようなのです。MDIフォームアプリケーションを作ってみたはいいですが、どうしてもCtrl+Tabなどでウィンドウが切り替わってしまいます。WndProcをオーバーライドしてキーをつぶしてもどうやらダメみたいですね。
また、隠しコンポーネント(?)であるPropertyGridですが、これにもちょっと困ったことがあります。どうも、Focusedプロパティが正しく得られないようなのです。複数のウィンドウで構成されているようですから、それが原因かな…。たぶん、GetParentで親を辿りつつ調べれば判別可能なんだと思いますが。