Item templates are app files that contain commonly used code that can be added to a project template to reduce development time.
The item templates contain the appropriate references and script tags to support Windows Store apps and Windows Phone Store apps. Some of the item templates implement a contract, which is like an agreement that one or more apps can use specific APIs. When you add a contract template (File Open Picker Contract, Share Target Contract), the app manifest is updated with the appropriate declarations to notify Windows or Windows Phonethat your app supports this contract. You can see the settings for these declarations on the Declarations tab of the Manifest Designer.
You can add an item template to a project by right-clicking the project in Solution Explorer and then clicking Add > New Item.
This table summarizes the types of item templates available in Visual C#, Visual Basic, or Visual C++ for Windows Runtime apps.
|Template||Description||Requires common files|
|Basic Page||A minimal page, containing a title and a back button, that uses NavigationHelper.||Yes|
|Blank Page||A blank page.||No|
|Group Detail Page||A page that displays details for a single group and previews each item in the group.||Yes|
|Grouped Items Page||A page that displays item previews arranged in groups.||Yes|
|Hub Page||A page that displays item previews arranged in sections and that uses a varied presentation for each section.||Yes|
|Item Detail Page||A page that displays one item in detail along with navigation to adjacent items in the same group.||Yes|
|Items Page||A page that displays a collection of items.||Yes|
|Search results page||A page that supports displaying search results.||Yes|
|Split Page||A page that displays a list of items and the details for a selected item.||Yes|
The navigation model used in the Page Control item templates is also used in the Hub, Grid, Split, and Navigation project templates. We recommend using this item template when you add pages to these project templates. For more info, see Quickstart: Navigating between pages.
|File Open Picker Contract||An app contract that enables supplying files to other apps. This item template enables an app to expose its data as files to other apps. For example, you can use this template to create a photo picker dialog box from which the user can pick a photo from Facebook, even if the photo isn't stored on the local hard drive. For more info, see Integrating with file picker contracts.||Yes|
|Share Target Contract||An app contract that supports receiving items shared by other apps. This item template enables an app to coordinate data sharing among other apps. For example, you can use this template to enable users to post a photo from Flickr on Facebook. This template includes code that enables the app to receive shared content. The app that contains this item template is started when the app is selected in the share UI. For more information, see QuickStart: receiving shared content.||Yes|
|Resource Dictionary||An empty, keyed collection of XAML resources.||No|
|Resources File (.resw)||A file for storing string and conditional resources for your application. To help localize a Windows Store app, you can add one or more Resources File item templates to your project. For more info, see Globalizing your app.||No|
|Settings Flyout||A blank Settings Flyout page.||No|
|Templated Control||A blank custom control with the appropriate default styling.||No|
|User Control||A blank user control.||No|
Some of the Windows Store and Windows Phone item templates defined above are complex pages and have dependencies on NavigationHelper, SuspensionManager, and other common files included in the project templates. These files are located in the Common folder that's automatically added when you create an app using the Hub App, Grid App, or Split App project templates. If any of the required references can't be found, you'll be prompted to add the required files.
The following table provides info on how to proceed when prompted to add required files.
|Action||Why choose this?||What happens?|
The required dependencies are added to the Common folder. If the folder already exists, all missing items are added. No existing files are modified. If the folder doesn't exist, it's created and all items are added to it.
The new item is added. No other files are added or modified.
The project isn't changed, and the item isn't added.
- C#/VB/C++ project templates for Windows Store apps
- Adding a Page Control item template (using C#/VB/C++ and XAML)
- Adding a Search Contract item template (using C#/VB/C++ and XAML)