Developing a Windows Store business app using C#, XAML, and Prism table of contents
[This article is for Windows 8.x and Windows Phone 8.x developers writing Windows Runtime apps. If you’re developing for Windows 10, see the latest documentation]
From: Developing a Windows Store business app using C#, XAML, and Prism for the Windows Runtime
Discover the table of contents for Developing a Windows Store business app using C#, XAML, and Prism for the Windows Runtime. You can use this table of contents to navigate through the documentation.
Download
After you download the code, see Getting started using Prism for the Windows Runtime for instructions on how to compile and run the reference implementation, as well as understand the Microsoft Visual Studio solution structure.
Table of contents
Developing a Windows Store business app using C#, XAML, and Prism for the Windows Runtime
Download Prism for Windows 8.0
Getting started using Prism for the Windows Runtime
Building and running the sample
Visual Studio solution structure for a Windows Store business app that uses the MVVM pattern
The AdventureWorks.Shopper project
The AdventureWorks.UILogic project
The AdventureWorks.WebServices project
The Microsoft.Practices.Prism.PubSubEvents project
The Microsoft.Practices.Prism.StoreApps project
Developer guidance summary and checklists for Windows Store business apps using C#, XAML, and Prism
Windows Store business apps developer checklists
Using the Model-View-ViewModel (MVVM) pattern
Creating and navigating between pages
Handling suspend, resume, and activation
Communicating between loosely coupled components
Developer tasks for building a Windows Store business app using C#, XAML, and Prism
Windows Store business app developer tasks
Guidance summary and checklists for Windows Store business apps
Using Prism for the Windows Runtime
Extended splash screen Quickstart
Incremental loading Quickstart
Using Prism to Create a Windows Store app
Architecture of a Windows Store business app that uses Prism
Creating a Windows Store app project using Prism and Unity
Creating a model class with validation support
Adding items to the Settings pane
Changing the Prism conventions
Changing the convention for naming and locating views
Changing the convention for naming, locating, and associating view models with views
Registering a view model factory with views instead of using a dependency injection container
Designing the user experience of a Windows Store business app using C#, XAML, and Prism
AdventureWorks Shopper user experiences
Deciding the user experience goals
Deciding what Microsoft Windows features to use
Deciding how to monetize the app
Making a good first impression
MVVM in AdventureWorks Shopper
Using a dependency injection container
Bootstrapping an MVVM app using Prism's MvvmAppBase class
Using the ViewModelLocator class to connect view models to views
Using a convention-based approach to connect view models to views
Other approaches to constructing view models and views
Creating a view model declaratively
Creating a view model programmatically
Creating a view defined as a data template
Updating a view in response to changes in the underlying view model or model
Additional considerations when implementing property change notification
UI interaction using the DelegateCommand class and Blend behaviors
Implementing behaviors to supplement the functionality of XAML elements
Invoking behaviors from a view
Additional MVVM considerations
Centralize data conversions in the view model or a conversion layer
Expose operational modes in the view model
Keep views and view models independent
Use asynchronous programming techniques to keep the UI responsive
Creating and navigating between pages in a Windows Store business app using C#, XAML, and Prism
Creating pages and navigating between them in AdventureWorks Shopper
Supporting multiple view states
Creating a custom GridView control that responds to layout changes
Creating a custom GridView control that displays items at multiple sizes
Separate resources for each locale
Ensure that each piece of text that appears in the UI is defined by a string resource
Add contextual comments to the app resource file
Define the flow direction for all pages
Ensure error messages are read from the resource file
Navigating to the hub page when AdventureWorks Shopper is activated
Invoking navigation using behaviors
Using touch in a Windows Store business app using C# and XAML
Touch in AdventureWorks Shopper
Swipe to select, command, and move
Swipe from edge for app commands
Swipe from edge for system commands
Validating user input in a Windows Store business app using C#, XAML, and Prism
Validation in AdventureWorks Shopper using Prism
Triggering validation when properties change
Triggering validation of all properties
Triggering server-side validation
Highlighting validation errors with behaviors
Persisting user input and validation errors when the app suspends and resumes
Managing application data in a Windows Store business app using C#, XAML, and Prism
Managing application data in AdventureWorks Shopper
Storing data in the app data stores
Storing and roaming user credentials
Exposing settings through the Settings charm
Creating data transfer objects
Accessing data through a web service
Consuming data from a web service using DTOs
Caching data from a web service
Authenticating users with a web service
Handling suspend, resume, and activation in a Windows Store business app using C#, XAML, and Prism
Suspend and resume in AdventureWorks Shopper
Understanding possible execution states
Implementation approaches for suspend and resume
Saving state from service and repository classes
Restoring state from service and repository classes
Event aggregation in AdventureWorks Shopper
Defining and publishing pub/sub events
Subscribing using strong references
Unsubscribing from pub/sub events
Working with tiles in a Windows Store business app using C#, XAML, and Prism
Tiles in AdventureWorks Shopper
Using periodic notifications to update tile content
Launching the app from a secondary tile
Implementing search in a Windows Store business app using C#, XAML, and Prism
Search in AdventureWorks Shopper
Populating the search results page with data
Navigating to the result's detail page
Enabling users to type into the search box
Improving performance in a Windows Store business app using C# and XAML
Minimize the communication between the app and the web service
Limit the amount of data downloaded from the web service
Use the IncrementalUpdateBehavior to implement incremental loading
Keep your app's memory usage low when it's suspended
Minimize the amount of resources that your app uses
Limit the time spent in transition between managed and native code
Reduce garbage collection time
Testing and deploying Windows Store business apps using C#, XAML, and Prism
Testing AdventureWorks Shopper
Testing synchronous functionality
Testing asynchronous functionality
Testing your app with the Windows App Certification Kit
Creating a Windows Store certification checklist
Deploying and managing Windows Store apps
Meet the AdventureWorks Shopper and Prism team
Quickstarts for Windows Store business apps using C#, XAML, and Prism
Validation Quickstart for Windows Store apps using C#, XAML, and Prism
Building and running the Quickstart
Triggering validation explicitly
Triggering validation implicitly on property change
Highlighting validation errors
Event aggregation Quickstart for Windows Store apps using C#, XAML, and Prism
Building and running the Quickstart
Defining the ShoppingCartChangedEvent class
Notifying subscribers of the ShoppingCartChangedEvent
Registering to receive notifications of the ShoppingCartChangedEvent
Bootstrapping an MVVM Windows Store app Quickstart using C#, XAML, and Prism
Building and running the Quickstart
Bootstrapping an MVVM app using the MvvmAppBase class
Adding app specific startup behavior to the App class
Bootstrapping without a dependency injection container
Extended splash screen Quickstart for Windows Store apps using C#, XAML, and Prism
Building and running the Quickstart
Creating the extended splash screen
Responding to resize and image opened events for the extended splash screen
Displaying the extended splash screen and launching additional loading tasks
Incremental loading Quickstart for Windows Store apps using C# and XAML
Building and running the Quickstart
Using the Blend IncrementalUpdateBehavior to add incremental loading
Handling the ContainerContentChanging event in code-behind
Prism for the Windows Runtime reference