私はこのチュートリアルからモーダル ダイアログを学んでいます: http://www.codeproject.com/Articles/36516/WPF-Modal-DialogGrid.Column
、しかし、そのモーダル ダイアログが領域/Grid.Rows
のみでブロックされていることを示すことは可能ですか?別のGrid.Column
/Grid.Rows
まだアクセス可能ですか?
ありがとう。
私はこのチュートリアルからモーダル ダイアログを学んでいます: http://www.codeproject.com/Articles/36516/WPF-Modal-DialogGrid.Column
、しかし、そのモーダル ダイアログが領域/Grid.Rows
のみでブロックされていることを示すことは可能ですか?別のGrid.Column
/Grid.Rows
まだアクセス可能ですか?
ありがとう。
現在、モーダル ダイアログで完全なグリッドをオーバーレイしている可能性があります。
<Grid>
<Grid x:Name="ModalDialogParent">
...
</Grid>
<controls:ModalDialog x:Name="ModalDialog" />
</Grid>
代わりに、グリッド内に配置してその位置を指定することにより、モーダルダイアログを親グリッドの特定の部分に修正するだけで動作する¹ 。
<Grid x:Name="ModalDialogParent">
...
<controls:ModalDialog x:Name="ModalDialog"
Grid.Row="1" Grid.Column="1"
Grid.RowSpan="2" Grid.ColumnSpan="2" />
</Grid>
¹ リンク先のモーダル ダイアログ コードに慣れていないので、今すぐざっと見ただけです。
モーダルダイアログの定義は次のとおりです(強調は私のものです):
ユーザー インターフェイスの設計では、モーダル ウィンドウは子ウィンドウであり、ユーザーが親アプリケーションの操作に戻る前にモーダル ウィンドウを操作する必要があるため、アプリケーションのメイン ウィンドウでのワークフローが妨げられます。モーダル ウィンドウは、ダイアログ ボックスを表示するために使用されることが多いため、ヘビー ウィンドウまたはモーダル ダイアログと呼ばれることがよくあります。
したがって、モーダル ダイアログ ボックスが必要な場合、質問に対する答えはノーです。グリッドの特定のセクションをブロックしたいだけの場合は、使用を禁止したいセクションに対してダイアログを UserControl としてロードするだけです。その後も、アプリケーションの残りの部分にアクセスできます。