InteractionRequestTriggerを起動した後、確認ダイアログにフォーカスを自動的に設定する必要があります。
次のState-Based Navigation Prism Quickstartが役立つ場合があります。
適切なViewModelコンテキストとそのコールバックを設定することにより、 ChatViewModel のメソッドでInteractionRequest のダイアログを表示Raise()
するために、QuickStart でメソッドが呼び出されます。 SendMessage()
public IInteractionRequest SendMessageRequest
{
get { return this.sendMessageRequest; }
}
public void SendMessage()
{
var contact = this.CurrentContact;
this.sendMessageRequest.Raise(
new SendMessageViewModel(contact, this),
sendMessage =>
{
if (sendMessage.Result.HasValue && sendMessage.Result.Value)
{
this.SendingMessage = true;
this.chatService.SendMessage(
contact,
sendMessage.Message,
result =>
{
this.SendingMessage = false;
});
}
});
}
さらに、ChatView
はインタラクション リクエストを検出し、ポップアップ ウィンドウをPopupChildWindowAction
表示します。SendMessageChildWindow
<prism:InteractionRequestTrigger SourceObject="{Binding SendMessageRequest}">
<prism:PopupChildWindowAction>
<prism:PopupChildWindowAction.ChildWindow>
<vs:SendMessageChildWindow/>
</prism:PopupChildWindowAction.ChildWindow>
</prism:PopupChildWindowAction>
</prism:InteractionRequestTrigger>
これが役立つことを願っています。