Po pierwsze nie jestem szalony, ponieważ używam MVVM w WinForms-) Wiem o wzorze MVP (Model View Presenter) i jego wariantach. Ale kiedy zacząłem ten projekt, miałem zamiar nauczyć się WPF i używać go, ale jestem zmuszony spieszyć programowanie i nie mam czasu na naukę WPF, więc muszę napisać go w WinForm, który dobrze znam.Windows Forms (WinForms) Model widoku ViewModel (MVVM) do DataBind lub nie
Krótko mówiąc, mam aplikację Smart Client zorientowaną na duże dane, która jest bliska ukończenia, mam wykonane wszystkie Modele i ViewModels (Infrastruktura, Domena, Prezentacja zrobiona) Interfejs użytkownika jest również wykonywany, teraz potrzebuję tylko podłączyć interfejs użytkownika do ViewModels. Najpierw zacząłem podłączanie go przy użyciu standardowego sposobu WinForm (BindingSources i proste wiązanie danych), ale gdy zrobiłem 30-50% wiązania, okazało się, że mój program działa bardzo wolno, mam jak dotąd 100-150 powiązanych właściwości łącznie, 30 z nich są to powiązania domeny głównej (root root) z edycją EditForm. Tak więc zbieranie danych nie działa dobrze w tej sytuacji, wiele niepotrzebnych aktualizacji, kaskadowe aktualizacje całego widoku, gdy coś się zmienia, niejasne zachowanie i inne brzydkie rzeczy. Pachnie jak bardzo niewiarygodny kod, na którym mam niewielką kontrolę. Zacząłem więc przepisywać okablowanie jako czysty, czysty kod WinForms (subskrybując zdarzenia PropertyChange i ListChanged i ustawiając właściwość ViewModels na własną rękę z interfejsu użytkownika). Dużo kodu do napisania, ale działa znacznie szybciej, mam pełną kontrolę nad tym i jest dużo bardziej niezawodny. Więc jakie są twoje przemyślenia na temat tych gości? Ktoś miał takie doświadczenie? Jaki jest twój werdykt w sprawie "Do DataBind czy nie"?
zobaczyć również http://stackoverflow.com/questions/654722/implementing-mvc-with-windows-forms/682216#682216 –