Bringing existing managed code into Metro style apps 8/6/2019 11:52 PM TOOL-790C Bringing existing managed code into Metro style apps Daniel Plaisted SDET Microsoft Corporation © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Windows 8 introduces a new app development platform for Metro style apps.
You can use your existing .NET skills to write Windows Metro style apps.
You can move your existing .NET code forward.
Windows Phone flash card app 8/6/2019 11:52 PM demo Windows Phone flash card app © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
The ViewModel Pattern ViewModel View Model Presentation logic Binding XAML Code Model ViewModel Design w/ XAML Presentation logic Binding Data and Business Logic
View to ViewModel Binding <!– HomeView.xaml --> <ListBox ItemsSource= "{Binding Lists}"/> <!-- ListBox ItemTemplate --> <Image Source="{Binding Image}"/> <TextBlock Text="{Binding Name}"/> // HomeViewModel.cs public List<FlashCardListViewModel> Lists { get; private set; } // FlashCardListViewModel.cs public ImageSource Image { get; private set; } public string Name ViewModel View © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Ways to move your code Start from scratch Copy everything Shared code and conditional compilation Portable Class Library
Differences we’ll see UI namespace is different Platform differences WinRT vs .NET types App startup and lifecycle model File APIs INotifyPropertyChanged Picture chooser ICommand Behavioral differences URIs Navigation
Porting a Windows Phone app to Metro style 8/6/2019 11:52 PM demo Porting a Windows Phone app to Metro style © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Differences we saw UI namespace is different Platform differences WinRT vs .NET types App startup and lifecycle model File APIs INotifyPropertyChanged Picture chooser ICommand Behavioral differences URIs Navigation
Further Information [TOOL-515T] Tips and tricks for developing Metro style apps using XAML [TOOL-531T] Using the Windows Runtime from C# and Visual Basic [APP-737T] Metro style apps using XAML: what you need to know [TOOL-810T] Async made simple in Windows 8, with C# and Visual Basic [TOOL-930C] A .NET developer's view of Windows 8 app development Documentation: .NET for Metro style apps overview Contact Info: daplaist@microsoft.com Twitter: @dsplaisted
Go make great Windows Metro style apps! Call to Action Go make great Windows Metro style apps!
thank you Feedback and questions http://forums.dev.windows.com Session feedback http://bldw.in/SessionFeedback
8/6/2019 11:52 PM © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.