gpt4 book ai didi

silverlight - Windows Phone 7、MVVM、Silverlight 和导航最佳实践/模式和策略

转载 作者:行者123 更新时间:2023-12-01 00:02:32 24 4
gpt4 key购买 nike

在构建 Windows Phone 7 应用程序时。使用 MVVM 模式,我们一直在努力掌握一种模式或技术,以集中适合 MVVM 的导航逻辑。

举个例子,每次应用程序。调用我们的 Web 服务,我们检查我们已分配给应用程序的登录 token 。之前的还没过期。我们总是从 Web 服务向电话返回一些状态,其中之一可能是 Enum.AuthenticationExpired。

如果我们收到,我想我们会提醒用户并导航回登录屏幕。 (这是我们可能获得的众多状态示例之一)

现在,想要保持干燥,这种逻辑感觉应该在一个地方。这就是我的问题。

我应该如何建模依赖于(基本上) switch 或 if 语句的导航,以告诉我们导航到下一个位置,而无需在每个 View 中重复。

有人可以推荐公认的模式或技术吗?

谢谢

最佳答案

听起来你有一个“状态”(你会打开的东西),然后是一个 Action (你要导航到的地方)。有多种处理方法。一种方法是创建一个公开 NavigateTo(something) 方法的 INavigationService,其中某个东西封装了当前状态,并且该方法返回下一个状态。也许该方法也将执行页面交换本身。

另一种方法可能是创建一个 IEnumerable 来驱动页面,这在向前驱动的应用程序中是有意义的,但在您尝试管理后退按钮时会变得有点模糊。

使用 INavigate,您可以推送和弹出页面(入队/出队),然后登录将被推送到堆栈顶部并执行其操作,然后弹出页面以返回。

关于silverlight - Windows Phone 7、MVVM、Silverlight 和导航最佳实践/模式和策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2747346/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com