1

WPF にはWindow.ShowDialog()、モーダル ダイアログ ボックスを表示できるものがあります。

WinForms にも同様の機能がありますが、 を渡すことができるオーバーロードあります。このように、新しいダイアログはモーダルではなく、常にその所有者のすぐ上の z オーダーを維持します。Form.ShowDialog(IWin32Window)IWin32Window owner

WPFを使用してこれと同じ機能を得るにはどうすればよいですか?

4

2 に答える 2

3

ウィンドウでOwnerプロパティを使用します。

于 2011-08-16T21:46:24.673 に答える
1

@ Jonathan.Peppersの答えを拡張するには:

という名前の Window がFooWindowあり、その中でBarWindow.csインスタンスを作成して実行したいとします。FooWindow次のように単純なモーダル バージョンを作成できます。

new FooWindow(){ Owner = this }.ShowDialog();

それは明らかにあなたのインスタンスへの参照を必要としないことを前提としていますが、あなたはその考えを理解していますか?

于 2011-08-16T21:54:12.323 に答える