MDI サポートは、C# に既に存在します。したがって、最初のスクリーンショットは MDI オプションを使用しています。
2 番目のスクリーンショットは、タブ付きウィンドウを使用しています。次の 2 つのオプションがあります。
- このオープンソース ライブラリDockPanelSuiteを使用すると、アプリケーションにタブを作成できます。ビジュアル スタジオ インターフェイスに似たもの。フォームを作成し、必要に応じてタブで移動できます。ドラッグ アンド ドロップで、親フォームの任意の場所にドッキングすることもできます。ビジュアルスタジオのように。
- 2 番目のオプションは、ウィンドウ全体をカバーするタブ コントロールを持つフォームを作成することです。そこで、リソース エディターを使用してタブを作成し、エンド ユーザーに表示するフォームに基づいて表示/非表示を切り替えます。
私の意見では、より多くのカスタマイズを提供する最初のオプションを使用してください。また、ドックパネルを使用すると、最初のスクリーンショットと 2 番目のスクリーンショットに表示されているビューを切り替えることができます。そのため、ユーザーはどのように表示したいかをより適切に制御できます。Dockpanel は、商用アプリでも無料で使用でき、ソース コードが付属しています。そのため、dll を使用するか、コードをアプリケーションに直接組み込むことができます。