Подтвердить что ты не робот

Хороший пример применения Silverlight-MVVM

Я прочитал ряд хороших статей о шаблоне Model-View-ViewModel, и моя команда намеревается реализовать этот шаблон в последней версии нашего приложения. Я все еще не совсем получаю ВСЕ бит, которые идут вместе, чтобы сделать эту работу. Я бы хотел найти хороший пример этого шаблона, с которым я смогу работать. Что-то в небольшом масштабе, так же, как Джейсон Долингер делает в своем видео здесь, но мне хотелось бы, чтобы я мог работать самостоятельно медленнее.

Заранее благодарим за помощь.

4b9b3361

Ответ 1

В основном ViewModel является оберткой вокруг модели. Теперь это может быть не очень полезно:-) Подумайте о модели как о данных, с которыми работает ваше приложение, скажем, человека. Теперь у человека есть день рождения, и вы можете захотеть получить форму для входа в день рождения человека. Предположим, что мы просто используем простой TextBox, дата показывает что-то вроде 01-02-2009 12:00:00 AM. Для начала нам не нужна часть времени, и мы также не можем быть довольны частью 01-02-2009, так как это зависит от ваших настроек локали.

Итак, здесь ViewModel приходит im. Он завершает класс Person и показывает дату как три целых значения, год, месяц и день. В наборе свойств он пытается построить дату из разных значений и отображает любые ошибки, которые могут возникнуть.

Так просто сказал, что ViewModel - это оболочка модели, специально предназначенная для определенного вида (отображения). Он устраняет большинство IValueConvertors одновременно.

У Джоша Смита есть приятное объяснение здесь: http://joshsmithonwpf.wordpress.com/2008/11/14/using-a-viewmodel-to-provide-meaningful-validation-error-messages и большое обсуждение здесь: http://groups.google.com/group/wpf-disciples/browse_thread/thread/3fe270cd107f184f?pli=1

Ответ 2

Prism 4.0 теперь включает документацию для создания приложений MVVM. Это предназначено для использования библиотек Prism, но концепции работают для шаблона MVVM в целом.

http://compositewpf.codeplex.com/releases

Ответ 3

Здесь еще один, чтобы добавить в список: Простой MVVM Toolkit от Tony Sneed (ваш по-настоящему): http://simplemvvmtoolkit.codeplex.com.

Инструментарий состоит из вспомогательных классов, шаблонов элементов Visual Studio и фрагментов кода. В дополнение к фактическому набору инструментов есть пример приложения с пошаговыми инструкциями о том, как создать базовое приложение Silverlight с использованием шаблона MVVM.

Ответ 4

Nikhil Kothari опубликовал сообщение о том, как использовать этот шаблон в своей библиотеке Silverlight.FX. Посмотрите здесь: http://www.nikhilk.net/ViewModel-Pattern-DLR.aspx

Ответ 7

Лучшее объяснение ViewModel было дано Скоттом Гензельмом во время его беседы MVC в Европе.

Ответ на один лайнер - это модель (класс), созданная с единственной целью отправки всех необходимых данных, которые требуется конкретному виду, а также для получения измененных данных из представления в случае двух-.

Ответ 8

Взгляните на мою статью о MVVM в реальной жизни в Silverlight. Хотя это не для новичков, а предназначение в основном экспертных разработчиков, работающих над реалистичными проектами.

http://alexburtsev.wordpress.com/2011/03/05/mvvm-pattern-in-silverlight-and-wpf/