Дизайн приложения - всплывающая аутентификация с MVVM - PullRequest
0 голосов
/ 24 февраля 2012

Этот вопрос на самом деле не о коде, а о дизайне приложения.У меня есть приложение, которое требует аутентификации, для этого у меня есть всплывающее окно, которое появляется на главной странице, когда пользователь не вошел в систему.

Мой вопрос заключается в том, как сделать это правильно, следуя шаблону mvvm.Я думаю, что элемент управления всплывающим окном должен быть в коде позади представления, но кто посылает заказ, чтобы показать это?Вид модели или модель?Должен ли код, указанный позади, проверить с помощью модели представления, если пользователь аутентифицирован (я не думаю, что это правильный подход)?

Я изучал шаблон mvvm и начал использовать mvvm light в качестве простогои чистый способ отделить бизнес от уровня представления.

Эта проблема была первой, которую я сам не смог понять.

Спасибо

1 Ответ

1 голос
/ 24 февраля 2012

вы можете сделать это так. Когда DataContext из UserControl установлен для текущего пользователя:

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

Возможно, вам придется ознакомиться с конвертерами или вызвать свойство IsNotAuthenticated, чтобы быстрее двигаться вперед.

...