dotnetomaniak.pl - Artykuły z tagiem MVVM

Zaczęły się wakacje i musiałem na razie przerwać spotkania Grupy .NET. Ale nie chciałem całkowicie usypiać grupy, więc postanowiłem nagrać dla nich prezentację o wzorcu Model View ViewModel, ponieważ zaczęliśmy pod koniec semestru robić projekt oparty o Windows Presentation Foundation, a tam MVVM świetnie pasuje. Zacząłem od zrobienia prezentacji, takiej jaką bym wyświetlał mówiąc do nich na żywo...

Dziel się z innymi:
MVVM - o prezentacji | MD Tech Blog

Architektura 3078 dni, 9 godzin, 36 minut temu manio143 164 źrodło rozwiń

Opisuje jak rozszerzyć funkcje kontrolki WPF w czystym WPF . Bez żadnego uciążliwego code behind.

Tagi: C#, MVVM, WPF
Dziel się z innymi:
Wzbogacanie kontrolek WPF #1 - Robert Olechowski blog

Sztuka programowania 3094 dni, 9 godzin, 52 minuty temu RR_WW 160 źrodło rozwiń

← Kurs MVVM #4 DataTemplateSelectorOpublikowano, autor:Tomasz J W tej części kursu dowiesz się jak stworzyć aplikację wielojęzyczną wykorzystując bindowanie. Jako przykład stworzymy sobie formularz mini-formularz. Zaczynamy od stworzenia plik zasobów (ang. Resources File) w dwóch wersjach, domyślna – Polska i Angielska. Aby to zrobić do projektu dodajemy nowy element typu resx jak na obrazie poniżej. Plik ten wykorzystamy jako słownik domyślnego języka. Otwieramy nowo utworzony plik i dodajemy do ni...

Dziel się z innymi:
Kurs MVVM #5 Aplikacja wielojęzyczna | pasja-programowania

Sztuka programowania 3127 dni, 3 godziny, 49 minut temu Tomasz Janczewski 182 źrodło rozwiń

Opis projektu MemoryVisualizera toczy się w kilku wątkach. Jednym z nich jest moja przygoda z F# w kontekście WPF. Po pierwszej części, w której w ogólności opisywałem jak możemy “pożenić” WPF z F#, pora kolejne kroki. Ale wcześniej potrzebne nam będzie krótkie przypomnienie z WPF w C#.

Tagi: C#, MVVM, WPF
Źródło: blog.kokosa.net
Dziel się z innymi:
Blog Kokosa | MemoryVisualizer - WPF oraz ICommand

Daj się poznać 2016 3167 dni, 9 godzin, 21 minut temu KonradKokosa 70 źrodło rozwiń

Po trzech pierwszych, wprowadzających postach pora wreszcie przejść do konkretów - kodu! MemoryVisualizer ma być aplikacją desktopową, napisaną w WPF. Nie mam jeszcze ani jednej linijki kodu, zacznę zatem od pustej aplikacji z jakiegoś szablonu. Gdybym zdecydował się na C#, sprawa byłaby prosta - startuję z pustego szablonu WPF Desktop Application i już.

Tagi: F Sharp, F#, MVVM, WPF
Źródło: blog.kokosa.net
Dziel się z innymi:
Blog Kokosa | MemoryVisualizer - jak połączyć WPF z F#

Daj się poznać 2016 3190 dni, 9 godzin, 53 minuty temu KonradKokosa 110 źrodło rozwiń

← Kurs MVVM #3 – Galeria obrazów (ObservableCollection, AncestorType i datatemplate)Opublikowano, autor:Tomasz J Wstęp W poprzedniej części kursu dowiedzieliśmy się jak zbindować kolekcję danych. Dzisiaj rozszerzymy sobie to o możliwość bindowania kolekcji, która zawiera różne dane albo zawiera elementy, które chcielibyśmy przedstawić w różny sposób. Do tego posłuży nam DataTemplateSelector. Jeśli mój opis jest zbyt zagmatwany polecam zapoznać się z tym. https://msdn.microsoft.com/pl-pl/library/sys...

Tagi: MVVM, Prism, xaml
Dziel się z innymi:
Kurs MVVM #4 DataTemplateSelector | pasja-programowania

Sztuka programowania 3271 dni, 8 godzin, 48 minut temu Tomasz Janczewski 142 źrodło rozwiń

← Kurs MVVM #2 – Konwertery i style w widokuOpublikowano, autor:Tomasz J Wprowadzenie W tej części kursu dowiesz się jak stworzyć prostą galerię obrazów. Co to jest kolekcja ObservableCollection. Jak połączyć kolekcję elementów z kontrolką ListView. Do czego służy AncestorType i jak stworzyć szablon dla elementów na liście. Zaczynamy ! Zadanie Utwórz aplikację WPF, a w niej jeden główny widok oraz połączony z nim viewmodel. W widoku umieść kontrolkę ListView i ustaw jej orientację na horyzontalną. ...

Tagi: MVVM, Prism, WPF, xaml
Dziel się z innymi:
Kurs MVVM #3 – Galeria obrazów (ObservableCollection, AncestorType i datatemplate) | pasja-programowania

Sztuka programowania 3290 dni, 2 godziny, 57 minut temu Tomasz Janczewski 143 źrodło rozwiń

← Kurs MVVM #1 – WprowadzenieOpublikowano, autor:Tomasz J Wprowadzenie Jak dowiedzieliśmy się w pierwszym wpisie kursu istotą wzorca MVVM jest bindowanie. Czasem jednak chcielibyśmy wykorzystać już dostępne dane do zmian w naszym widoku czy ustawić widoczność pewnych elementów, ale zmienne w elemencie widoku mają inny typ niż te które posiadamy. Najpopularniejszy przykład to zmienne typu Visibility po stronie widoku i zmiennej typu bool, które chcielibyśmy do nich przypisać. Pisanie akcesorów do widok...

Tagi: C#, kurs, MVVM, nauka, Prism, WPF, xaml
Dziel się z innymi:
Kurs MVVM #2 – Konwertery i style w widoku | pasja-programowania

Sztuka programowania 3293 dni, 8 godzin, 11 minut temu Tomasz Janczewski 176 źrodło rozwiń

← Książkowe zapiski #2 – Mistrz czystego kodu (co powinien wiedzieć zawodowy programista)Opublikowano, autor:Tomasz J Schemat wzorca MVVM Przedmowa Co to właściwie takiego jest MVVM ? Na czym polega bindowanie i jakie są jego rodzaje ? Jak walidować przy pomocy MVVM ? Co to logika biznesowa ? Na wszystkie te pytania oraz wiele innych, które pojawią się w trakcie trwania tego kursu postaram się odpowiedzieć i pokazać jak się za nie zabrać w formie prostych przykładów. Jak mówił klasyk „czasem człow...

Tagi: C#, kurs, MVVM, nauka, Prism, xaml
Dziel się z innymi:
Kurs MVVM #1 – Wprowadzenie | pasja-programowania

Sztuka programowania 3295 dni, 8 godzin, 19 minut temu Tomasz Janczewski 499 źrodło rozwiń

Czasem tworząc aplikację wykorzystującą XAML, chcielibyśmy przekazywać dane pomiędzy poszczególnymi stronami. Niestety technologie Microsoftu nie są do tego dobrze przygotowane. Co prawda możemy zawsze wykorzystać jakiś globalny obiekt kontekstu, ale w praktyce jest to rozwiązanie nieefektywne. Możemy również wykorzystać foldery lokalne/roaming, który opisywałem tutaj, ale w pewnym sensie strzelamy tutaj do muchy z armaty. Czy można to zrobić jakoś prosto i elegancko? Okazuje się, że tak - choć po części...

MVVM Light - wykorzystanie messengera w komunikacji

Mobile development 3344 dni, 8 godzin, 57 minut temu rroszczyk 202 źrodło rozwiń

Tworząc aplikacje mobilne, nie jest łatwo zbudować model danych, który idealnie odpowiadałby potrzebom aktualnego widoku. Problem staje się jeszcze bardziej złożony, w sytuacji gdy korzystamy z API, które zwraca ogólny model, dla rożnych końcówek. W takiej sytuacji, programista aplikacji mobilnej musi sam zadbać o odpowiednie wyświetlenie i sformatowanie otrzymanych danych.. W świecie Universal Apps problem ten można rozwiązać na różne sposoby. Osobiście preferuje tutaj wykorzystanie architektury MVVM, k...

Dziel się z innymi:
Universal Apps - mapowanie danych z API na potrzeby XAML

Web 3395 dni, 10 godzin, 57 minut temu rroszczyk 127 źrodło rozwiń

Dużo w ostatnim czasie piszę o aplikacjach uniwersalnych, a wcześniej również sporo było tekstów o WPF. Co łączy oba tematy? Oprócz XAMLa który pojawia się w obu tych technologiach, pewnym dość istotnym łącznikiem jest wzorzec architektoniczny MVVM. MVVM pozwala na rozbicie logiki naszej aplikacji na pewne określone elementy. Mamy widoki, modele oraz tajemniczy element ViewModel. ViewModel to klasa, która zawiera uporządkowane i wypełnione danymi klasy modelu, pasujące do pewnego określonego widoku. Inny...

Tagi: C#, MVVM
Dziel się z innymi:
Biblioteki warte poznania w C# - MVVM Light

Sztuka programowania 3658 dni, 9 godzin, 36 minut temu rroszczyk 514 źrodło rozwiń

Potrzebowałem pewien czas temu uzyskać taki w gruncie rzeczy prosty efekt. Po kliknięciu lewym przyciskiem myszki na butonie otwiera się menu z którego wybieramy interesującą opcję. Niby nic trudnego, ale ja przekombinowałem (nie pierwszy zresztą raz i nie ostatni). Na początek może jak wyglądałby kod takiego buttona: Nic niezwykłego jak sądzę. Teraz tylko tak to zaimplementować aby otwierało się na lewy przycisk a nie na prawy. Najpierw może pokaże jak zrobiłem to w code-behind. Pierwsze co m...

Dziel się z innymi:
WPF – Caliburn.Micro – ContextMenu czyli jak skutecznie utrudnić sobie życie | Wojtek Pitek about dev

Windows 3737 dni, 9 godzin, 28 minut temu wopi 227 źrodło rozwiń

Zgodnie z obietnicą pora na przekazywanie danych pomiędzy oknami(widokami). Jak możemy zaimplementować taką bądź co bądź podstawową funkcjonalność (na razie nie myślmy w ogóle o WPF a tym bardziej o Caliburn.Micro).Public Property Najprostszym sposobem (nie znaczy, że złym) może być zastosowanie jakiejś publicznej property np. w takim stylu: private void GetAddress_Click(object sender, EventArgs e) { AddressForm addressForm=new AddressForm (); addressForm.ShowDialog(); string ad...

Dziel się z innymi:
WPF – Caliburn.Micro – Eventy i Event Aggregator | Wojtek Pitek about dev

Windows 3741 dni, 10 godzin temu wopi 153 źrodło rozwiń

W dotychczasowo opisanych częściach cyklu na temat MVVM (z wykorzystaniem Caliburn.Micro) wszystko było pokazane na przykładzie aplikacji mającej wyłącznie jedno okno. W rzeczywistym świecie takie aplikacje należą do mniejszości. Programy mają zwykle kilka okien i tym właśnie teraz się zajmiemy.Podejście klasyczne W klasycznie zbudowanej aplikacji jeśli chcemy wejść np. opcje aplikacji to otwiera się nam nowe okno. Spróbujmy zmodyfikować aplikację z ostatniego przykładu. Modyfikacja View jest pr...

Dziel się z innymi:
WPF – Caliburn.Micro – obsługa okien | Wojtek Pitek about dev

Windows 3741 dni, 10 godzin temu wopi 176 źrodło rozwiń

Czasami są takie dni w życiu człowieka (a nawet programisty), że wszystko idzie zgodnie z planem. Każde zadanie, które dostaje jest banalne albo (lepsza opcja) zrobione już wcześniej. Miałem kiedyś taki dzień. Jakby to powiedział Skipper dzień idealny. Niestety w moim przypadku to się nie sprawdziło. W moim przypadku sprawdza się raczej “jeśli wszystko idzie zgodnie z planem to znaczy, że to zasadzka”. No ale wracając do meritum dostałem kiedyś “banalne” zadanie musiałem wymienić tło w głównym okni...

Dziel się z innymi:
WPF – Caliburn.Micro – Gdy standardowa konwencja to za mało | Wojtek Pitek about dev

Windows 3745 dni, 9 godzin, 54 minuty temu wopi 132 źrodło rozwiń

Jeśli ktoś czytał moje poprzednie posty na temat MVVMa to z pewnością wie, że jednym z plusów jego stosowania jest możliwość odseparowania(w mniejszym lub większym zakresie) pracy programisty od pracy osoby odpowiedzialnej za design aplikacji. Oczywiście tak mówi teoria i często programista sam musi opracować wygląd okna aplikacji (no ale takie jest już życie). Wyobraźmy więc sobie, że dostaliśmy wytyczne jak ma wyglądać okno (takie a takie przyciski, tutaj grid, jakiś checkbox, szerokość elementu ...

Dziel się z innymi:
WPF – Caliburn.Micro – Problemy podczas designu | Wojtek Pitek about dev

Windows 3748 dni, 8 godzin, 56 minut temu wopi 164 źrodło rozwiń

Najwyższy szas na zapowiadaną obsługę zdarzeń w Caliburn.Micro. Najpierw jednak krótkie przypomnienie. Zaczniemy od prostego zdarzenie Click na ButtonieBez MVVM Każde zdarzenie z z View ma odwzorowanie w Code-Behind. Jeśli nazwy metod się nie zgadzają kod się nie kompiluje View Code-behind private void SayHi_Click(object sender, RoutedEventArgs e) { //some app logic } Z MVVM Musimy pamiętać o konieczności wpowadzenia klasy implementującej ICommand (odsyłam do przykładów z wcześn...

Dziel się z innymi:
WPF – Caliburn.Micro – obsługa zdarzeń | Wojtek Pitek about dev

Windows 3751 dni, 17 godzin, 4 minuty temu wopi 179 źrodło rozwiń

W poprzednim poście pokazałem prostą aplikację z wykorzystaniem Caliburn.Micro. Teraz chciałem pokazać bardziej zaawansowane (ale tylko trochę) sposoby bindowania.Bindowanie bezpośrednio do obiektu W przykładzie, który został pokazany uzupełniając dane w textboxach przypisujemy te dane do odpowiedniej property w klasie. Fragment dla przypomnienia public string LastName { get { return _person.LastName; } set { _person.LastName = value; NotifyOfPropertyChange("Last...

Dziel się z innymi:
WPF – CALIBURN.MICRO – JESZCZE TROCHĘ O BINDOWANIU | Wojtek Pitek about dev

Windows 3755 dni, 6 godzin, 10 minut temu wopi 215 źrodło rozwiń

Pod koniec poprzedniego postu na temat MVVM wspomniałem o Caliburn.Micro jako narzędziu, które czyni moją pracę lżejszą. Dla tych, którzy nie wiedzą jest to framework wspomagający w tworzeniu aplikacji opartej o wzorzec MVVM. Jeśli ktoś zastanawia się dlaczego od razu nie wspomniałem o tym frameworku i poprzedni przykład robiłem bez jego użycia to moja odpowiedź jest prosta (i poparta gorzkim doświadczeniem). Otóż robiąc coś zaawansowanego musimy mieć świadomość mechanizmów za tym stojących inaczej...

Dziel się z innymi:
WPF – Caliburn.Micro Some Kind of Magic | Wojtek Pitek about dev

Windows 3759 dni, 9 godzin, 5 minut temu wopi 223 źrodło rozwiń

1 2 3 4

Najaktywniejsi w tym miesiącu