1

我认为这特别是一个 Caliburn.Micro 问题,因为它与 CB 如何处理 windows phone 7 中的导航有关。

我有一个可以选择启动电话号码选择器的视图。结果返回后,我将其存储并导航离开,只有导航不起作用。我认为这是因为 Handle 方法正在处理任务而不是我的观点。我知道我可以在页面末尾粘贴一个按钮以在句柄完成后进行导航,但我希望在结果返回后发生这种情况。

这就是我正在做的事情。

    public void Handle(TaskCompleted<PhoneNumberResult> message)
    {
        webtext.Recipient = message.Result.PhoneNumber;
        webtext.RecipientDisplayName = message.Result.DisplayName;
        CommitWebtextToStorage();

        events.Unsubscribe(this);
        navigationService.UriFor<ComposeViewModel>();
    }

哪个行不通。我也不能在其中调用方法,因为这与我正在做的事情相同。我需要让句柄方法退出,然后调用导航服务。

4

1 回答 1

2

实际上,导航应该如下所示:

navigationService.UriFor<ComposeViewModel>().Navigate();

(注意最后的Navigate方法)

如果这只是问题中的一个错字,我想这个问题可能与应用程序恢复的时间有关(当您在选择器任务完成后返回应用程序时会发生这种情况)。
在这种情况下,您能否为此创建一个问题

于 2011-07-17T22:05:10.477 回答