Download presentation
Presentation is loading. Please wait.
Published byAlan Gregory Modified over 8 years ago
1
Igor Ralić igrali.com dizzy.hr @igrali Open source u razvoju Windows Phone aplikacija
2
Inspirirani ljudima. Ugasite mobitele. Hvala.
6
PROS CONS Support Free as in “free coffee” Often free as in “free speech” Fix it yourself Extend it yourself Support Not up to par with commercial controls Sometimes Confusing licenses Most of the time http://choosealicense.com/
8
FRE E
9
Inspirirani ljudima. unflwd.m e + demos
10
Inspirirani ljudima. TASK REQUIREMENT PROBLEM IDEA OPEN SOURCE SOLUTION
11
Inspirirani ljudima. Maintainable Testable Easily designed Well structured MVVM pattern
12
View DataContext, Converters, Animations In some cases – code behind is OK ViewModel Properties, Commands Databinding Presentation logic Model INotifyPropertyChanged XAML platforms Multiplatform MVVM http://msdn.microsoft.com/en-us/library/gg405484%28v=pandp.40%29.aspx
13
Visual element Window, Page, UserControl, DataTemplate DataContext Customizable data binding behavior Value converters, validation rules Animations, transitions May define logic in code-behind In some cases View
14
ViewModel Presentation logic Properties, commands Data binding INotifyPropertyChanged ObservableCollection No direct reference to view Logical states represented visually Value converters
15
Model Client side model INotifyPropertyChanged Data validation, IDataErrorInfo Non-visual No dependency on views or viewmodels Used with services & repositories Providing data access and caching
16
MVVM No frameworks needed, but… ViewModelBase ICommand implementation RelayCommand Design mode Messenger implementation DI (constructor injection) https://mvvmlight.codeplex.com/
17
MVVM Light Lightweight & the simplest Nuget MIT license Laurent Bugnion Accelerated MVVM development! Many alternatives Simple MVVM Toolkit, Caliburn.Micro, Catel.MVVM … https://mvvmlight.codeplex.com/
18
Inspirirani ljudima. DEMO MVVM Light
19
Inspirirani ljudima. Use Windows Phone APIs as services in MVVM Cimbalino toolkit
20
Many components Nuget MIT License Pedro Lamas Cimbalino.Phone.Toolkit Background Camera Controls DeviceInfo Location MediaLibrary PhoneDialer UserInfo +Random services, behaviors, extensions http://cimbalino.org/
21
Cimbalino – location services
22
Inspirirani ljudima. Use binding with ApplicationBar Cimbalino toolkit
23
Bindable ApplicationBar… Not a DependencyObject Localization Events -> VM Commands ApplicationBarBehavior ApplicationBarBehaviorIconButton ApplicationBarMenuItem http://cimbalino.org/
24
… and a bindable MultiApplicationBar http://cimbalino.org/
25
Inspirirani ljudima. DEMO Cimbalino toolkit
26
Inspirirani ljudima. More UI controls Windows Phone toolkit Coding4Fun toolkit
27
Basic Windows Phone controls set Often not enough! PhoneApplicationPage, PhoneApplicationFrame Grid, StackPanel, Border, Canvas, ContentControl, Pivot, Panorama, VirtualizingStackPanel, ScrollViewer TextBlock, TextBox, PasswordBox Button, HyperlinkButton CheckBox, RadioButton, Slider ListBox, LongListSelector Image, Map, MediaElement WebBrowser ProgressBar, Popup Building your own Expensive, tough, time-consuming
28
Windows Phone Toolkit WP Developer Platform Team Nuget Ms-PL license UI Controls Transitions Effects Extensions http://phone.codeplex.com/
31
Coding4Fun Clint Rutkas and Coding4Fun team Nuget Ms-PL license AudioControlNetworkStorage http://coding4fun.codeplex.com/
33
C4F ToastPrompt
34
Inspirirani ljudima. DEMO Windows Phone & Coding4Fun Toolkits
35
Inspirirani ljudima. Reorder items in a listReorderListBox
36
Reorder items in a list Propagate change to inner (Observable) collection Very simple! Nuget Ms-PL license http://reorderlistbox.codeplex.com/
37
ReorderListBox
38
Inspirirani ljudima. Override global theme Light or dark WP Theme Manager
39
Avoid messed up colors Nuget Apache 2.0 license Customizes Foreground, background, contrast/chrome/etc. colors and brushes System tray (when navigation finishes) Appbar (if created immediately) Does not customize MessageBox https://github.com/jeffwilcox/wp-thememanager
40
Inspirirani ljudima. DEMO ReorderListBox & WP Theme Manager
41
Inspirirani ljudima. Work with imagesWriteableBitmapEx
42
Extensions for WriteableBitmap Windows Phone, Silverlight, WPF, WinRT Nuget Ms-PL license Features Transformation (crop, resize, flip, rotate…) Shapes (ellipse, polyline, quad, rectangle and triangle...) Blitting (many different blend modes…) Conversions (from and to byte[]...) http://writeablebitmapex.codeplex.com/
43
Inspirirani ljudima. Cache dataQ42.WinRT
44
Windows Phone and WinRT MIT License DataLoader Easy Loading/Finished/Error binding DataCache Input cache key and API call ImageExtensions.CacheUri https://github.com/Q42/Q42.WinRT
45
Inspirirani ljudima. DEMO Q42.WinRT
46
Inspirirani ljudima. Show data in charts Visual representation of data ModernUI Charts
47
ModernUI charts Not available on Nuget (Silverlight dll) Ms-PL license ColumnChart PieChart BarChart Doughnut Chart Radial Gauge Chart http://modernuicharts.codeplex.com/
48
ModernUI Charts code sample
51
Inspirirani ljudima. Remind user to rate appRate My App
52
By Nokia Custom license Nuget Alternative ReviewBugger https://github.com/nokia-developer/rate-my-app
54
Inspirirani ljudima. DEMO Rate My App
55
And many, many others… Facebook C# SDK LINQ to Twitter Json.NET HTML Agility Pack AgFx MvvmCross SLAR Toolkit GART ExifLib Farseer Physics Engine ZXing.Net AdRotator...
56
Using open source in Windows Phone development is like playing with LEGO. Just connect the pieces and go wherever your imagination takes you… github.com/igrali igrali.co m
57
Inspirirani ljudima. Pitanja i odgovori.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.