Spis treści
Uzupełnieniem niniejszego dokumentu jest solucja Visual Studio z pełną listą przykładów podzielonych na oddzielnego projekty. Aby uruchomić przykłady można zbudować całą solucję, następnie skopiować pliki wynikowe do folderu instalacyjnego POS-a i zarejestrować tylko jeden moduł inicjujący POSUsageExample.dll (instrukcja rejestracji znajduje się w pliku README.txt solucji). Alternatywą jest budowanie każdego projektu z osobną (w zależności który przykład chcemy przeanalizować) i tylko tę wybraną bibliotekę zarejestrować w aplikacji POS. Projekty podzielone są na trzy kategorie: przykłady użycia kontrolek, przykłady całych widoków oraz przykłady rozszerzalności istniejących widoków.
Przykłady użycia kontrolek POS-a
Przykłady użycia kontrolki ComboBox2
Przykłady użycia kontrolki ze standardowym widokiem modalnym listy do wyboru oraz z niestandardową prezentacją. Dostępne w projekcie ComboBox2Example.
Przykład użycia kontrolki ButtonSpinner
Przykład użycia kontrolki wraz z TextBoxem do sterowania wartościami liczbowymi wprowadzonymi przez użytkownika. Dostępny w projekcie ButtonSpinnerExample.
Przykład użycia kontrolki ComboBoxButton
Dostępny w projekcie ComboBoxButtonExample.
Przykład użycia kontrolki MultiButton
Przykład użycia kontrolki wraz z pełną zarządzalnością w aplikacji. Dostępny w projekcie MultiButtonExample.
Przykład użycia kontrolki ItemsContainer
Przykłady użycia kontrolki wraz z pełną zarządzalnością w aplikacji. Pierwszy z definicją elementów w xaml-u, drugi z dynamicznie asynchroniczną budowaną zawartością w kodzie. Dostępne w projekcie ItemsContainerExample.
Przykład użycia kontrolki Grid
Przykład budowy w pełni zarządzalnego widoku w oparciu o Grid. Dostępny w projekcie GridExample.
Przykład użycia kontrolki FieldControl
Przykłady użycia kontrolki wraz z pełną zarządzalnością i obsługą walidacji. Dostępne w projekcie FieldControlExample.
Przykład użycia kontrolek TabControl i TabControlItem
Przykłady użycia kontrolki TabControl oraz TabControlItem do tworzenie zakładek na widoku. Dostępny w projekcie TabControlExample.
Przykład użycia kontrolki DatePicker2
W projekcie DatePicker2Example zamieszczono kod przykładowego użycia kontrolki wraz z walidacją.
Przykłady tworzenie widoków
Prosty moduł z nowym pustym widokiem
Przykład przedstawia w jaki sposób należy tworzyć moduły rozszerzające dla POS-a. Dostępny w projekcie EmptyViewExample. Składa się z klasy Module pozwalającej na rejestrację modułu oraz pustego widoku (SimpleView, SimpleViewModel), wraz z trybem zarządzania interfejsem (DesignSimpleViewModel). Widok został zarejestrowany w postaci kafla w menu głównym aplikacji POS.
Typowy widok listy dokumentów
Przykład przedstawia budowę typowego widoku z listą pobierającą dane asynchronicznie, wspierającą sortowanie oraz stronicowanie, wyszukiwarką oraz filtrami. Składa się z klasy Module (która odpowiada za rejestrację modułu rozszerzającego oraz widoku w postaci kafla w menu głównym aplikacji POS) oraz klas widoku i view-modelu listy – SimpleListView, SimpleListViewModel i DesignSimpleListViewModel. Przykład dostępny w projekcie DataGridCompleteExample.
Typowy widok dokumentu handlowego
Przykład przedstawia budowę typowego widoku dokumentu handlowego, zawierającego DataGrid oraz wyszukiwarkę SearchBox. Dostępny w projekcie DocumentExample.
Widok dokumentu handlowego z obsługują atrybutów
Przykład budowy widoku dokumentu handlowego wzbogacony o obsługuję atrybutów dla listy oraz w postaci dynamicznie generowanych kontrolek w kontenerze widoku. Dostępny w projekcie DocumentAttributesExample.
Przykłady rozszerzalności istniejących widoków POS-a
Dodawanie kontrolki do kontenera istniejącego widoku
Projekt ControlExtensionsExamples zawiera przykład opisany w tym dokumencie oraz drugi pokazujący dodawanie przycisków zarówno do kontenera ItemsContainer jak i na Grid do istniejącego widoku stworzonego w tym samym projekcie.
Dodawanie kolumny do DataGrida na istniejącym widoku
Pełny przykład opisanej w tym dokumencie rozszerzalności kolumn DataGrida w projekcie DataGridColumnExtensionExample.
Przykład implementacji własnego sposobu agregacji danych w DataGridzie
W projekcie DataGridAggregationExample przedstawiono przykładową implementację agregacji w postaci mediany.
Przykład rozszerzenia obszaru statusowego
Projekt StatusBarExtensionExample dodaje dwa przyciski do obszaru statusowego. Jeden będący skrótem do otwierania nowego dokumentu handlowego, drugi wykorzystujący kontrolkę ComboBoxButton.