2013-11-27 2 views
0

По разным причинам (главным образом времени) мы должны создать новое приложение с Winforms. У меня такое чувство, что люди, выше в иерархии, могут захотеть изменить это приложение WPF (или что-то еще) через год или около того, чтобы представить более удобный интерфейс. Но сейчас мы застряли в Winforms. Мы будем использовать Entity Framework для отображения O/R.Winforms к шаблонам WPF

Мой вопрос: если кто-то может порекомендовать шаблон для использования в приложении Winforms, то работа, которую нужно переместить из Winforms в WPF, будет максимально простой. Мы также хотим иметь возможность изменить часть «Просмотр» в приложении Winforms на другой проект Winforms. Я смотрю MVP для приложения winforms. У меня нет большого опыта работы с WPF, поэтому я этого не делаю, если это возможно, я видел, что MVVM, похоже, популярен в WPF.

Я не хочу переписывать любой бизнес-код. В идеале мне бы хотелось просто изменить «View» -ную часть из winforms в WPF. Или, по крайней мере, сделать этот процесс максимально гладким.

Любые предложения или рекомендации будут очень признательны.

+0

'Любые предложения или recommendation' - Да, если у вас мало времени, чтобы сделать заявление, сделать это с WPF. забыть winforms, это совершенно бесполезно и заставляет вас тратить время на ужасное время в дерьмовом коде, за которым не должно быть даже самого начала. WPF позволяет значительно быстрее развивать время, потому что у него есть серьезный механизм привязки данных, в отличие от winforms, который является смешной шуткой. –

+0

Запись любого кода winforms является пустой тратой времени из-за того, что код winforms нельзя портировать на что-либо еще. В то время как MVVM имеет гораздо большую развязку от пользовательского интерфейса, и большая часть кода может быть повторно использована на любой из технологий на основе XAML (WPF/WinRT XAML/Silverlight/Windows Phone) без каких-либо изменений. –

ответ

0

Как уже отмечалось в вопросе, одна из отличительных особенностей WPF по сравнению с Winforms - это почти повсеместно MVVM design pattern. Хотя невозможно реализовать MVVM в Winforms точно так же, как это обычно делается в WPF, придерживаться его основных идей может, тем не менее, пройти долгий путь, чтобы общая структура объектов и логика взаимодействия были более согласованы с WPF.

При правильном выполнении MVVM весь бизнес-код разделяется на отдельный слой, поэтому вам не нужно переписывать его - просто создайте модели представления и представления и соедините их вместе с существующими бизнес-объектами.

Мое предложение - реализовать небольшое прототипное приложение в WPF, чтобы получить представление о том, как MVVM работает на практике, а затем решить, как и как перевести эти концепции в мир Winforms. Это требует некоторых усилий, хотя и в кодировании, и в анализе, но я сомневаюсь, что приложение Winforms может быть выровнено с WPF даже на базовых уровнях, не понимая, что такое WPF и MVVM.

MVVM (Model-View-ViewModel) Pattern For Windows Form Applications, using C#

+0

Спасибо за ответ! –

Смежные вопросы