应用程序设计 - 使用MVVM弹出身份验证

时间:2012-02-24 10:23:33

标签: windows-phone-7 mvvm mvvm-light application-design

这个问题并不是关于代码而是应用程序设计。 我有一个需要身份验证的应用程序,为此我在用户未登录时弹出一个主页面。

我的问题是如何按照mvvm模式做到这一点。我认为弹出控件应该在视图后面的代码中,但谁发送命令来显示它?视图模型还是模型?如果用户经过身份验证,后面的代码是否应该使用viewmodel进行检查(我不认为这是正确的方法)?

我一直在研究mvvm模式,并开始使用mvvm light作为一种简单而干净的方式将业务与表示层分开。

这是第一个我自己无法解决的问题。

由于

1 个答案:

答案 0 :(得分:1)

你可以这样做。将UserControl的DataContext设置为当前用户:

<UserControl DataContext="{Binding Path=User}">
<Popup IsOpen="{Binding Path=IsAuthenticated, Converter={StaticResource BoolToOpposite}">
  ...
</Popup>
</Control>

您可能需要阅读转换器或调用Property IsNotAuthenticated以更快地向前推进。