2009-08-24 16 views
1

У меня есть вопрос относительно Josh Smith's famous demo app on MVVM.Приложение демоверсии MVVM Джоша Смита: добавьте команды в список команд MainWindowViewModel

Я пытаюсь создать «настоящее» приложение вокруг него, чтобы изучить WPF.

Создает этот список команд в MainWindowViewModel, содержащий 2 команды (создайте новые и просмотрите всех клиентов). Этот список доступен только для чтения (почему? Какая-то конкретная причина?). Было бы неплохо добавить и удалить некоторые команды, в зависимости от выбранной рабочей области. Как редактировать или удалять клиента, когда он имеет фокус и так далее.

Как бы это осуществить? Могу я просто сделать его обычным списком и добавить команды? Или привязать Commands-View к списку команд для выбранного рабочего пространства вместо MainWindow? Как? Любые другие способы? Поделитесь своими идеями!

спасибо!

ответ

1

Я пишу статью о defining the commands in the viewmodel и как вы можете использовать все возможности привязки данных для отображения ваших команд.

Одна из возможностей, упомянутых был

определяет фильтрованную версию списка команды «местные команд меню» для непосредственного использования в представлении

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

В статье также содержится ссылка на очень простое демонстрационное приложение, которое показывает только, как это работает, поэтому я думаю, что это может вам помочь.

+0

Ваша статья кажется очень подробной и интересной. Я буду работать через это и поделиться своим опытом здесь. Спасибо. –

+0

после долгих соображений, я буду использовать Josh Smith's approach, потому что я нахожу его, без обид, легче понять (это ничего не значит, потому что я довольно нуб). Поскольку вы упомянули об этом в своей статье, я задал ваш ответ как принятый ответ =) Большое вам спасибо. –

+0

Возможно, статья, которую вы упоминаете о Джоше Смите, легче понять, потому что она ближе к «оригинальной» концепции команд в wpf. Команды в viewmodel - это конструкция, построенная поверх этого, я, возможно, все вам станет понятнее, если сначала вы прочитаете некоторое объяснение о чистых командах wpf, например здесь: http://www.switchonthecode.com/tutorials/wpf-tutorial-command-bindings-and-custom-commands (и, конечно же, нет никакого преступления) – DaniCE