2010-12-28 25 views
6

この質問は前に投稿されていますが、私は良い答えが見つかりません。WPF MDIの子供

私のWPFアプリケーションでMDIの子供が欲しいです。そして、私はそれらの子どもたちが完全にWPFに準拠するようにします。

.Net WPFには、MDI子(メインウィンドウ内のウィンドウ)がありません。デザインが時代遅れであり、GUIアプリケーションをそのように設計すべきではないからだという人もいます。これらの人々はこの投稿に答えることを控えることができます。私は必要なものを知っています。 :)

WPF MDIにはどのような(できれば無料の)代替品がありますか? これらはMVVMで動作しますか?

EDIT: PEOPLE - 「MDI IS NOT GOOD」というコメントを投票しないでください。私は特に人々にそれを避けるように頼んだ。 MDIウィンドウを使用しないように指示するのではなく、MDIウィンドウを求めています。

+0

以前に投稿した質問の回答には何が間違っていますか?これらのソリューションがなぜあなたにとってうまくいかないのかを教えていない限り、人々は再びそれらを投稿します。例:http://wpfmdi.codeplex.com/ –

+0

私は何が間違っていたのか覚えていませんが、あなたは良い点を作っています。もう一度(私は「コード」の中で)すぐにこれに戻ります(来年はいつか)。 –

+0

WPVM-MDIでMVVMライトを試しました。 MDIの子(ユーザコントロール)のメニューとボタンで 'Commands'をバインドしました。それは正常に動作しています。 –

答えて

3

Hereあなたが探しているものが見つかります。

編集:私はちょうどあなたがどのように質問したかを見ました。だからあなたはすでにそれについて知っていると思います。

3
私はあなたがそれを聞きたくない理解

が、基本的には、アプリケーションのメインウィンドウ内のデスクトップメタファーを複製することを目的としたMDI、そしてそれはそれは、ウィンドウ管理のいくつかのレベルの関与ので、エンドユーザーには少し混乱した:

テック:は今、あなたはちょうど大丈夫でなければなりません通常のサイズとすべてのものに復元しました 他のウィンドウ内のアクティブウィンドウのMaximizeボタンをクリックします。

お客様:とは?

Tab-based interfacesは、一般にMDIのより良い代替品と考えられています。 TabControlクラスを使用し、TabItemsにビューをホストする方法を示すJosh Smith's MVVM article on MSDN Magazineと読むことができます。

+2

私は同意しませんが、私は同意しません。私たちがMDIを望む場合があります。たとえば、誰もがMDIウィンドウの動作を期待していて、一度にいくつかのチャンネルをフォローしたいmIRCクローンを考えてみましょう。私たちはいくつかの悪い使い方のためにそれを放棄することはできません。 –

+0

@Tedd、私はMDIにまだ使用していることに同意しますが、WPFはそのメタファをサポートしていないので、MVVMでうまくいくエミュレートされたソリューションを見つけるのは難しいかもしれません。 –

+0

MDI多くの子ウィンドウを管理下に置くのに非常に便利です。 Photoshop CCの悪夢を見てみましょう。別のアプリにAltキーを押してみてください。タブ付きのアプリは、何かのためにはOKですが、他の人にとっては恐ろしいものです。 MDIはボックス内の別のツールのように扱われ、ファッションの理由から嫌われてはなりません。 –

関連する問題