Zachęcam do kolejnego artykułu, tym razem o wzorcu MVVM: http://msdn.microsoft.com/pl-pl/library/wprowadzenie-do-wzorca-projektowego-model-view-viewmodel-na-przykladzie-aplikacji-wpf.aspxExplore posts in the same categories:Patterns & Practices, WPF
Strona głównaUżytkownik
Adi Ochmann | użytkownik
Architektura 4701 dni, 5 godzin, 7 minut temu 920 źrodło rozwiń
Projektując programy w technologiach XAMLowych z wykorzystaniem MVVM Light Toolkit (w zasadzie liczy się wzorzec), zawsze napotykam problemy, na które trudno znaleźć jednoznaczną odpowiedź. Najczęściej kłopoty sprawia widok, który nie zawsze „chce” się zmieścić w kodzie xaml. Prostsze zadania można rozwiązać przy pomocy zachowań (?) czy też triggerów. Sprawy się komplikują w przypadku storyboardów. Co zrobić, jeżeli chcemy uruchomić ...
Architektura 4612 dni, 21 godzin, 49 minut temu 306 źrodło rozwiń
Uczepiłem się ostatnimi czasy tego wzorca. Uczepiłem się na tyle, że w trakcie przygotowań jest mój autorski framework (może trochę za dużo powiedziane). Jednak nie o tym będzie w tym artykule. W czasie prac nad nową aplikacją na Windows Phone napotkałem pewne kłopoty. Jak to w MVVM, wywoływanie określonych zachowań interfejsu we View-Model zawsze stawia pewne znaki zapytania. Tym razem miałem do wyświetlenia różne komunikat...
Silverlight 4511 dni, 5 godzin, 44 minuty temu 387 źrodło rozwiń
Jeżeli szukasz dobrego frameworka do MVVM dla WinRT, to koniecznie zobacz nowy ciekawy framework -StyleMVVM.
Sztuka programowania 4305 dni, 12 godzin, 24 minuty temu 292 źrodło rozwiń
Wprowadzenie Wzorce projektowe mają na celu rozwiązanie najczęściej spotykanych problemów związanych z pisaniem kodu. W przypadku warstwy prezentacji można wykorzystać m. in. następujące rozwiązania: MVC, MVP czy Model-View-ViewModel. Ze względu na mechanizm wiązań (binding), programistom WPF oraz Silverlight, polecany jest wzorzec MVVM – jest to technologia umożliwiająca bardzo łatwą implementację wzorca.K...
Architektura 4216 dni, 20 godzin, 29 minut temu 560 źrodło rozwiń
Wpis ma na celu przybliżyć różnice pomiędzy najbardziej popularnymi architektonicznymi wzrocami projektowymi.
Architektura 4100 dni, 3 godziny, 32 minuty temu 1016 źrodło 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...
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 ...
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
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...
Sztuka programowania 3661 dni, 12 godzin temu 514 ź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...
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...
Mobile development 3347 dni, 11 godzin, 22 minuty temu 202 ź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...
Sztuka programowania 3298 dni, 10 godzin, 44 minuty temu 499 ź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...
Sztuka programowania 3296 dni, 10 godzin, 35 minut temu 176 ź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ą. ...
Sztuka programowania 3293 dni, 5 godzin, 21 minut temu 143 źrodło rozwiń
Temat prosty, jednak nie dla wszystkich jasny. Postanowiłem napisać ten post po tym gdy po zapytaniu się wielu osób: „czym różni się cel od zakresu?” usłyszałem losowy ciąg wyrazów zawierający głównie dwa wyrazy – „cel” i „zakres” ;) Rozumienie tych pojęć jest szczególnie istotne w projektach IT bez względu na to czy jesteś programistą, PM czy klientem. Dlaczego? Odpowiem w kolejnych linijkac...
Po pierwszym wpisie na temat programowanie funkcyjnego w języku C#, dostałem sporo informacji, że końcowy kod jest dużo mniej czytelny od oryginalnego. Faktycznie dla osób, które nigdy nie pisali w języku funkcyjnym może być on trudniejszy do rozczytania. Spróbuję w niniejszym wpisie, pokazać jaka jest idea takiego zapisu. Używając programowania funkcyjnego, pracujemy na danych i funkcjach, które są wyraźnie od siebie oddzielone. Technika Pipeliningu pokazuję po pierwsze naturalny...
Sztuka programowania 3289 dni, 9 godzin, 49 minut temu 251 źrodło rozwiń
C# jest językiem, który był zaprojektowany z nastawieniem na programowanie obiektowe. Ewoluując, z każdą wersją zawiera co raz więcej elementów, które pozwalają na skorzystanie z paradygmatu języków funkcyjnych. Na przykładzie metody budującej listę html’ową pokażę kilka technik, dzięki którym zamienimy typowy kod C# w kod bardziej przypominający kod języka funkcyjnego.
Sztuka programowania 3289 dni, 9 godzin, 49 minut temu 552 źrodło rozwiń
Tak… aż chciałem to nazwać Autentykacją ;) by tych wszystkich purystów, Hitlerów polskiej gramatki skłonić do wejścia i dania komentarza. Ale nie, nie będę taki, bo dla tych purystów też będzie piękne słówko, ale kiedy indziej. No dobrze, to dlaczego w ogóle z tym słowem wyskakuje? A, to dobre pytanie. Przez ostatni miesiąc miałem dość sporo na głowie i za każdym razem jak coś paplałem, to sobie to zapisywałem by to...
← 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...
Sztuka programowania 3274 dni, 11 godzin, 12 minut temu 142 źrodło rozwiń