├── banner.png ├── 2016-10-05 Episode 5 MVVM ├── ContactsApp │ ├── ContactsApp.iOS │ │ ├── iTunesArtwork │ │ ├── iTunesArtwork@2x │ │ ├── Resources │ │ │ ├── Default.png │ │ │ ├── Icon-76.png │ │ │ ├── Default@2x.png │ │ │ ├── Icon-60@2x.png │ │ │ ├── Icon-60@3x.png │ │ │ ├── Icon-76@2x.png │ │ │ ├── Icon-Small.png │ │ │ ├── Icon-Small-40.png │ │ │ ├── Icon-Small@2x.png │ │ │ ├── Icon-Small@3x.png │ │ │ ├── Default-568h@2x.png │ │ │ ├── Default-Portrait.png │ │ │ ├── Icon-Small-40@2x.png │ │ │ ├── Icon-Small-40@3x.png │ │ │ ├── Default-Portrait@2x.png │ │ │ └── LaunchScreen.storyboard │ │ ├── packages.config │ │ ├── Entitlements.plist │ │ ├── Main.cs │ │ ├── AppDelegate.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── Info.plist │ │ └── ContactsApp.iOS.csproj │ ├── ContactsApp.UWP │ │ ├── Assets │ │ │ ├── StoreLogo.png │ │ │ ├── SplashScreen.scale-200.png │ │ │ ├── LockScreenLogo.scale-200.png │ │ │ ├── Square44x44Logo.scale-200.png │ │ │ ├── Wide310x150Logo.scale-200.png │ │ │ ├── Square150x150Logo.scale-200.png │ │ │ └── Square44x44Logo.targetsize-24_altform-unplated.png │ │ ├── App.xaml │ │ ├── project.json │ │ ├── MainPage.xaml │ │ ├── MainPage.xaml.cs │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ └── Default.rd.xml │ │ ├── Package.appxmanifest │ │ ├── App.xaml.cs │ │ └── ContactsApp.UWP.csproj │ ├── ContactsApp.Droid │ │ ├── Resources │ │ │ ├── drawable │ │ │ │ └── icon.png │ │ │ ├── drawable-hdpi │ │ │ │ └── icon.png │ │ │ ├── drawable-xhdpi │ │ │ │ └── icon.png │ │ │ ├── drawable-xxhdpi │ │ │ │ └── icon.png │ │ │ ├── layout │ │ │ │ ├── Toolbar.axml │ │ │ │ └── Tabbar.axml │ │ │ ├── values │ │ │ │ └── styles.xml │ │ │ └── AboutResources.txt │ │ ├── Properties │ │ │ ├── AndroidManifest.xml │ │ │ └── AssemblyInfo.cs │ │ ├── Assets │ │ │ └── AboutAssets.txt │ │ ├── MainActivity.cs │ │ ├── packages.config │ │ └── ContactsApp.Droid.csproj │ └── ContactsApp │ │ ├── GettingStarted.Xamarin │ │ ├── packages.config │ │ ├── Model │ │ └── Contact.cs │ │ ├── App.xaml │ │ ├── MainPage.xaml.cs │ │ ├── App.xaml.cs │ │ ├── MainPage.xaml │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ ├── ViewModels │ │ └── AddContactViewModel.cs │ │ └── ContactsApp.csproj ├── README.md └── ContactsApp.sln ├── 2016-09-07 Episode 1 ├── CoffeeApp │ ├── CoffeeApp.Droid │ │ ├── Resources │ │ │ ├── drawable │ │ │ │ └── Icon.png │ │ │ ├── values │ │ │ │ ├── Strings.xml │ │ │ │ ├── colors.xml │ │ │ │ └── styles.xml │ │ │ ├── layout │ │ │ │ └── Main.axml │ │ │ └── AboutResources.txt │ │ ├── GettingStarted.Xamarin │ │ ├── Assets │ │ │ └── AboutAssets.txt │ │ ├── app.config │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ └── AndroidManifest.xml │ │ ├── packages.config │ │ ├── MainActivity.cs │ │ └── CoffeeApp.Droid.csproj │ ├── CoffeeApp.iOS │ │ ├── GettingStarted.Xamarin │ │ ├── Entitlements.plist │ │ ├── Main.cs │ │ ├── packages.config │ │ ├── app.config │ │ ├── Info.plist │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── ViewController.designer.cs │ │ ├── ViewController.cs │ │ ├── AppDelegate.cs │ │ ├── Resources │ │ │ └── LaunchScreen.xib │ │ ├── Main.storyboard │ │ └── CoffeeApp.iOS.csproj │ ├── ClassLibrary1 │ │ ├── Class1.cs │ │ ├── project.json │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── ClassLibrary1.csproj │ ├── ClassLibrary2 │ │ ├── project.json │ │ ├── Class1.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── ClassLibrary2.csproj │ ├── CoffeeApp.Portable │ │ ├── Logic │ │ │ ├── Coffee.cs │ │ │ ├── DistanceUtils.cs │ │ │ └── CoffeesViewModel.cs │ │ ├── packages.config │ │ ├── app.config │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── CoffeeApp.Portable.csproj │ ├── CoffeeApp.Shared │ │ ├── Logic │ │ │ ├── Coffee.cs │ │ │ ├── DistanceUtils.cs │ │ │ └── CoffeesViewModel.cs │ │ ├── CoffeeApp.Shared.projitems │ │ └── CoffeeApp.Shared.shproj │ └── CoffeeApp.sln └── README.md ├── README.md ├── 2016-09-21 Episode 3 Xamarin.Forms Performance └── README.md ├── LICENSE └── .gitignore /banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/banner.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/iTunesArtwork: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/iTunesArtwork -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/iTunesArtwork@2x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/iTunesArtwork@2x -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Droid/Resources/drawable/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Droid/Resources/drawable/Icon.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/StoreLogo.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-76.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default@2x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-60@2x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-60@3x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-76@2x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small.png -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.iOS/GettingStarted.Xamarin: -------------------------------------------------------------------------------- 1 | 2 | GS\iOS\CS\iOSApp\GettingStarted.html 3 | false 4 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small-40.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small@2x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small@3x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/drawable/icon.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default-568h@2x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp/GettingStarted.Xamarin: -------------------------------------------------------------------------------- 1 | 2 | GS\XF\CS\App\GettingStarted.html 3 | false 4 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Droid/GettingStarted.Xamarin: -------------------------------------------------------------------------------- 1 | 2 | GS\Android\CS\AndroidApp\GettingStarted.html 3 | false 4 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default-Portrait.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default-Portrait.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small-40@2x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Icon-Small-40@3x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default-Portrait@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Resources/Default-Portrait@2x.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/drawable-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/drawable-xhdpi/icon.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/drawable-xxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/drawable-xxhdpi/icon.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/ClassLibrary1/Class1.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | namespace ClassLibrary1 7 | { 8 | public class Class1 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Droid/Resources/values/Strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hello World, Click Me! 4 | CoffeeApp.Droid 5 | 6 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.iOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Droid/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3498db 4 | #1976D2 5 | #FFC107 6 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/ClassLibrary1/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "supports": {}, 3 | "dependencies": { 4 | "Microsoft.NETCore.Portable.Compatibility": "1.0.1", 5 | "NETStandard.Library": "1.6.0" 6 | }, 7 | "frameworks": { 8 | "netstandard1.4": {} 9 | } 10 | } -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmontemagno/TheXamarinShow/HEAD/2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp/Model/Contact.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace ContactsApp.Model 8 | { 9 | class Contact 10 | { 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/ClassLibrary2/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "supports": {}, 3 | "dependencies": { 4 | "AutoMapper": "5.1.1", 5 | "Microsoft.NETCore.Portable.Compatibility": "1.0.1", 6 | "NETStandard.Library": "1.6.0" 7 | }, 8 | "frameworks": { 9 | "netstandard1.4": {} 10 | } 11 | } -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/ClassLibrary2/Class1.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using System.IO; 7 | 8 | namespace ClassLibrary2 9 | { 10 | public class Class1 11 | { 12 | FileStream stream; 13 | 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp/App.xaml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0", 4 | "Xamarin.Forms": "2.3.1.114" 5 | }, 6 | "frameworks": { 7 | "uap10.0": {} 8 | }, 9 | "runtimes": { 10 | "win10-arm": {}, 11 | "win10-arm-aot": {}, 12 | "win10-x86": {}, 13 | "win10-x86-aot": {}, 14 | "win10-x64": {}, 15 | "win10-x64-aot": {} 16 | } 17 | } -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Portable/Logic/Coffee.cs: -------------------------------------------------------------------------------- 1 | using AppServiceHelpers.Models; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | 7 | namespace CoffeeApp.Logic 8 | { 9 | public class Coffee : EntityData 10 | { 11 | public string Name { get; set; } 12 | public double Latitude { get; set; } 13 | public double Longitude { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Shared/Logic/Coffee.cs: -------------------------------------------------------------------------------- 1 | using AppServiceHelpers.Models; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | 7 | namespace CoffeeApp.Logic 8 | { 9 | public class Coffee : EntityData 10 | { 11 | public string Name { get; set; } 12 | public double Latitude { get; set; } 13 | public double Longitude { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.iOS/Main.cs: -------------------------------------------------------------------------------- 1 | using UIKit; 2 | 3 | namespace CoffeeApp 4 | { 5 | public class Application 6 | { 7 | // This is the main entry point of the application. 8 | static void Main(string[] args) 9 | { 10 | // if you want to use a different Application Delegate class from "AppDelegate" 11 | // you can specify it here. 12 | UIApplication.Main(args, null, "AppDelegate"); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/layout/Toolbar.axml: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using ContactsApp.ViewModels; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using Xamarin.Forms; 8 | 9 | namespace ContactsApp 10 | { 11 | public partial class MainPage : ContentPage 12 | { 13 | public MainPage() 14 | { 15 | InitializeComponent(); 16 | BindingContext = new AddContactViewModel(); 17 | 18 | } 19 | 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.iOS/Main.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | 5 | using Foundation; 6 | using UIKit; 7 | 8 | namespace ContactsApp.iOS 9 | { 10 | public class Application 11 | { 12 | // This is the main entry point of the application. 13 | static void Main(string[] args) 14 | { 15 | // if you want to use a different Application Delegate class from "AppDelegate" 16 | // you can specify it here. 17 | UIApplication.Main(args, null, "AppDelegate"); 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Resources/layout/Tabbar.axml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Droid/Resources/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 13 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Droid/Assets/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | Any raw assets you want to be deployed with your application can be placed in 2 | this directory (and child directories) and given a Build Action of "AndroidAsset". 3 | 4 | These files will be deployed with you package and will be accessible using Android's 5 | AssetManager, like this: 6 | 7 | public class ReadAsset : Activity 8 | { 9 | protected override void OnCreate (Bundle bundle) 10 | { 11 | base.OnCreate (bundle); 12 | 13 | InputStream input = Assets.Open ("my_asset.txt"); 14 | } 15 | } 16 | 17 | Additionally, some Android functions will automatically load asset files: 18 | 19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/Assets/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | Any raw assets you want to be deployed with your application can be placed in 2 | this directory (and child directories) and given a Build Action of "AndroidAsset". 3 | 4 | These files will be deployed with you package and will be accessible using Android's 5 | AssetManager, like this: 6 | 7 | public class ReadAsset : Activity 8 | { 9 | protected override void OnCreate (Bundle bundle) 10 | { 11 | base.OnCreate (bundle); 12 | 13 | InputStream input = Assets.Open ("my_asset.txt"); 14 | } 15 | } 16 | 17 | Additionally, some Android functions will automatically load asset files: 18 | 19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | ![](banner.png) 3 | [The Xamarin Show](https://channel9.msdn.com/Shows/XamarinShow?WT.mc_id=friends-0000-jamont) is all about native cross-platform mobile development for iOS, Android, macOS, and Windows with [Xamarin](http://xamarin.com). Join your host James Montemagno and his guests as they discuss building mobiles apps, integrating SDKs, extending mobile apps, the latest Xamarin news, awesome apps developers are building, and so much more. Follow [@JamesMontemagno](http://twitter.com/jamesmontemagno) and send him topics with #XamarinShow of what and who you would like to see on the show. 4 | 5 | 6 | Here you will find links to show notes and source code from the show. 7 | 8 | Additionally, you can open a new Issue to request specific topics you would like to see covered! 9 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.UWP/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | namespace ContactsApp.UWP 17 | { 18 | public sealed partial class MainPage 19 | { 20 | public MainPage() 21 | { 22 | this.InitializeComponent(); 23 | 24 | LoadApplication(new ContactsApp.App()); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Xamarin.Forms; 7 | 8 | namespace ContactsApp 9 | { 10 | public partial class App : Application 11 | { 12 | public App() 13 | { 14 | InitializeComponent(); 15 | 16 | MainPage = new ContactsApp.MainPage(); 17 | } 18 | 19 | protected override void OnStart() 20 | { 21 | // Handle when your app starts 22 | } 23 | 24 | protected override void OnSleep() 25 | { 26 | // Handle when your app sleeps 27 | } 28 | 29 | protected override void OnResume() 30 | { 31 | // Handle when your app resumes 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.iOS/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Shared/CoffeeApp.Shared.projitems: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | true 6 | 39256258-7349-499d-b235-05934db20ee3 7 | 8 | 9 | CoffeeApp.Shared 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Portable/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp.Droid/MainActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | using Android.App; 4 | using Android.Content.PM; 5 | using Android.Runtime; 6 | using Android.Views; 7 | using Android.Widget; 8 | using Android.OS; 9 | 10 | namespace ContactsApp.Droid 11 | { 12 | [Activity(Label = "ContactsApp", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] 13 | public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity 14 | { 15 | protected override void OnCreate(Bundle bundle) 16 | { 17 | TabLayoutResource = Resource.Layout.Tabbar; 18 | ToolbarResource = Resource.Layout.Toolbar; 19 | 20 | base.OnCreate(bundle); 21 | 22 | global::Xamarin.Forms.Forms.Init(this, bundle); 23 | LoadApplication(new App()); 24 | } 25 | } 26 | } 27 | 28 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/README.md: -------------------------------------------------------------------------------- 1 | ### 5: MVVM & Data Binding with Xamarin.Forms 2 | Out of all architectural patterns Model-View-ViewModel, or MVVM, has to be my favorite. MVVM enables developers to separate their business logic from their user interface code no matter if you are developing with iOS Storyboards, Android XML, or Xamarin.Forms XAML. In this episode I cover the basic building blocks of the MVVM pattern and then introduce you to the build in data binding framework built right into Xamarin.Forms so there is no need to ever manually set a text property, register for a click handler, and automatically enable and disable controls with Commands. 3 | 4 | ### Video Recording: 5 | * Video: https://channel9.msdn.com/Shows/XamarinShow/Introduction-to-MVVM 6 | 7 | 8 | ### Follow Me 9 | * Blog: http://motzcod.es 10 | * Twitter: http://www.twitter.com/jamesmontemagno 11 | * GitHub: http://github.com/jamesmontemagno 12 | * Weekly Podcast: http://mergeconflict.fm 13 | * The Xamarin Show: https://channel9.msdn.com/Shows/XamarinShow 14 | 15 | 16 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Droid/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.iOS/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /2016-09-07 Episode 1/CoffeeApp/CoffeeApp.Portable/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /2016-10-05 Episode 5 MVVM/ContactsApp/ContactsApp/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 |