1

メトロの外観を持つWPF-MVVM(.Net 4.0)アプリケーションに取り組んでいます(外観だけで、メトロアプリケーションではありません)。Windows8のようなメッセージボックスを表示して、ユーザーが[はい]/[いいえ]/[キャンセル](または任意のボタン)をクリックしてメッセージボックスを削除する前に。

私はこの他の点では素晴らしい記事に出くわし、解決策を見つけたと一瞬思いました。ただし、これには独自の欠点があります。ユーザーがマウスクリックによって背後にあるコントロールを操作できなくなるだけです。ただし、ユーザーはTabキーを使用して、後ろのボタンに戻り、ボタンをクリックすることができます(Enterキーを押します)。

いくつかのことが頭に浮かびます。

  • カスタムアドナーを探して、hitTestableプロパティで遊ぶ必要がありますか?

  • または、コントロールを配置して、その表示プロパティで遊ぶ必要があります。

アプローチを始める前に、誰かが過去に同様のことをしたことがあり、ポインタ/参照/アプローチを提供してくれたら、ここの素晴らしいコミュニティに質問を投げかけることを考えました。

誰かがこれを達成する方法を提案できますか?目的が解決する場合は、プリズムまたはその他のオープンソースを使用できますが、ウィンドウはカスタムメイドである必要があります。これがあまりにも愚かな質問だと思ったら失礼します。私の無知を許してください。これを読んでくれてありがとう。

4

2 に答える 2

0

最近、同様の問題に遭遇しました。そこで説明されているように、DialogPresenterを使用して解決しました。

http://www.codeproject.com/Articles/36516/WPF-Modal-Dialog

あちこちでいくつかの調整を行う必要がありましたが、全体的には正常に機能しており、ダイアログボックスを表示するための優れた方法があります。

于 2012-09-05T13:20:00.743 に答える
0

それを行うためのより良い方法があります

            var dialog = new MessageDialog("Select Social network is already  authorised!");
            dialog.ShowAsync();
于 2013-09-19T21:52:26.277 に答える