dotnetomaniak.pl

dotnetomaniak.pl - Artykuły z tagiem MVVM

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 916 dni, 13 godzin, 53 minuty temu KonradKokosa 65 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 939 dni, 14 godzin, 26 minut temu KonradKokosa 105 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 1020 dni, 13 godzin, 20 minut temu Tomasz Janczewski 132 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 1039 dni, 7 godzin, 29 minut temu Tomasz Janczewski 114 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 1042 dni, 12 godzin, 43 minuty temu Tomasz Janczewski 150 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 1044 dni, 12 godzin, 52 minuty temu Tomasz Janczewski 422 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 1093 dni, 13 godzin, 30 minut temu rroszczyk 199 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 1144 dni, 15 godzin, 30 minut temu rroszczyk 125 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 1407 dni, 14 godzin, 8 minut temu rroszczyk 508 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 1486 dni, 14 godzin, 1 minutę temu wopi 201 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 1490 dni, 14 godzin, 33 minuty temu wopi 146 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 1490 dni, 14 godzin, 33 minuty temu wopi 150 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 1494 dni, 14 godzin, 27 minut temu wopi 122 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 1497 dni, 13 godzin, 29 minut temu wopi 154 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 1500 dni, 21 godzin, 37 minut temu wopi 139 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 1504 dni, 10 godzin, 43 minuty temu wopi 122 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 1508 dni, 13 godzin, 38 minut temu wopi 207 rozwiń

Today, working on a new feature for my pet project, I realized that I have to notify the view, that all properties in view model have changed. The most obvious way to achieve that would, of course be to rise PropertyChange event a bunch of times. protected virtual void OnPropertyChanged(Expression

Dziel się z innymi:
[EN] .NET Blog: INotifyPropertyChange - notifying about change of all properties at once

Windows 1510 dni, 10 godzin, 59 minut temu nocturn 169 rozwiń

W poprzednim poście opisałem (bardzo ogólnie) dlaczego już nie lubię WinForms i dlaczego używam WPF. Przez używanie WPFa mam na myśli WPF+MVVM ponieważ szczerze mówiąc to uważam, że stosowanie WPFa bez MVVMa to strata czasu, ale to tylko moje zdanie (jak większość opinii wyrażona na tym blogu). Czym więc jest ten cały MVVM? Otóż jest to ni mniej ni więcej wzorzec projektowy. Na początek trochę teorii (niestety bez niej się nie da).Model Obiekty biznesowe, serwisy i wszystko to co jest związane z ...

Tagi: C#, MVVM, WPF
Dziel się z innymi:
WPF – MVVMa czas zacząć! | Wojtek Pitek about dev

Windows 1511 dni, 5 godzin, 15 minut temu wopi 345 rozwiń

Serię poświęconą WPF oraz MVVM czas zacząć. Wiem – wpisów tego typu jest w sieci sporo. Wiem, MVVM nie zawsze jest idealnym wyborem i istnieje wokół niego sporo kontrowersji. Wiem, emerytury w Polsce są za niskie. Nie zmienia to faktu, że przy okazji implementacji aplikacji WPFowej postanowiłem spróbować zaznać szczęścia w królestwie władcy ModelViewViewModel i jego rycerzy: ObservableCollection i Command. I muszę powiedzieć, że nie żałuję. Na pierwszy rzut oka różnic...

Tagi: MVVM, WPF, xaml
Dziel się z innymi:
WPF i MVVM w jednym stali domu. Część pierwsza – wprowadzenie | Waleczny Trzmiel

Windows 1556 dni, 21 godzin, 36 minut temu waleczny_trzmiel 404 rozwiń

1 2 3 4