Что делает MVVM, исключительно подходящий для WPF?

Проблема со (встроенным) firebird, что база данных не может находиться на сетевом диске. Кроме того, трудно иметь базу данных по диску только для чтения (CD/DVD).

Для некоторых бездельничает, эти ограничения видят Wiki Дельфи: http://delphi.wikia.com/wiki/Firebird_tipps

9
задан Reed Copsey 5 October 2009 в 17:24
поделиться

4 ответа

DataBinding, команды, шаблоны элементов управления и XAML.

Без одного из них MVVM было бы намного сложнее, если вообще возможно. Возьмем, к примеру, ASP.net, у него есть часть ASPX (которая для примера эквивалентна XAML), у него есть привязка данных, но у него нет команд или шаблонов управления, поэтому MVVM там невозможен. В WinForms у нас есть привязка к данным, и это почти все, так что это тоже невозможно.

7
ответ дан 4 December 2019 в 19:35
поделиться

Вкратце: это привязка данных.

Согласно Обзор привязки данных из MSDN :

Если привязка имеет правильные настройки и данные предоставляют надлежащие уведомления, тогда, когда данные изменяют свое значение, элементы, которые связаны с данными, отражают изменения автоматически. Связывание данных также может означать, что если внешнее представление данных в элементе изменяется, то базовые данные могут быть автоматически обновлены, чтобы отразить это изменение. Например, если пользователь редактирует значение в элементе TextBox, базовое значение данных автоматически обновляется, чтобы отразить это изменение.

Если вы правильно настроили свой XAML, вам нужно только взаимодействовать со своим пользовательским интерфейсом, используя модель просмотра. WPF заботится об обновлении пользовательского интерфейса при изменении модели представления,

2
ответ дан 4 December 2019 в 19:35
поделиться

Я думаю, что поддержка команд (ICommand) в дополнение к отличным возможностям привязки данных делает его подходящим для WPF и Silverlight.

1
ответ дан 4 December 2019 в 19:35
поделиться

Я реализовал двоюродный брат MVVM паттерн Model-View-Presenter в MFC, WinForms и даже MATLAB. Я согласен с оригинальным сообщением: WPF очень хорошо облегчает связывание данных, но вы можете использовать эти концепции и в других платформах (хотя и с большим количеством кода).

Читая блог Джона Гроссмана, реальное различие заключается в том, что пользовательский интерфейс должен быть написан на другом языке, чем бизнес-логика. Идеалом кажется то, что разработкой пользовательского интерфейса занимаются "дизайнеры", а не программисты.

В этой области WPF уникален - я не знаю других сред разработки, которые работают в соответствии с этим идеалом.

(Учтите, я никогда не работал в достаточно большой команде, чтобы требовались выделенные дизайнеры пользовательского интерфейса. Я не могу сказать, достижим ли этот идеал на самом деле).

2
ответ дан 4 December 2019 в 19:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: