Guidelines for print UI design

Applies to Windows only

This topic discusses the print UI associated with a Windows Store device app. This type of app provides a device-specific, supplementary experience for the user. When you highlight features that are specific to a particular make and model of printing device, you can provide a much richer user experience. The info in this topic is meant for independent hardware vendors or developers who plan to write apps that communicate directly with their printing device. Follow these guidelines when you design a customized print UI for your Windows Store device app.

To learn how to create a device app, see Windows Store device apps for printers on the Hardware Dev Center.

If you aren't writing a device app, see Guidelines for print-capable apps for more applicable recommendations.


Here's an example of how a Windows Store device app can enhance a user's print experience. This app replaces the default print experience provided by Windows with a customized More Settings flyout and a notification, which can be used by devices to alert the user or app about device-related issues.

Print invitation example

Amelia creates a party invitation, and then selects Print.

Print invitation example

In the print flyout, Amelia selects More Settings to see the current printing preferences.

Print preferences

Without customization, this is the Windows-provided default printing preferences window that Amelia would see.

Default print preferences

In this customized and branded Windows Store device app for print preferences, Amelia can modify the number of photos per page.

Customize print preferences

Next, Amelia presses the Back button. This automatically saves the new settings or printing preferences, and returns her to the original print flyout.

Customize print preferences

Amelia verifies her new printing preferences, then selects Print.

Customized print preferences example

When Amelia selects Print, the app she’s using receives a notification from the printer indicating that ink levels are low. This is called a toast notification.

Toast notification example

Amelia selects (or touches) the toast, and the next customized window shows her which ink cartridges have low ink. She selects Add to Cart to order replacements.

Order printer cartridges

When Amelia adds the ink cartridge to her cart, the next window provides more information about the order that she's about to place. She reviews the information and selects Buy.

Amelia then selects or touches the Back button to return to the Print window, where she can select Print to print her invitation.

Should I create a Windows Store device app for my printer?

Use a Windows Store device app for a printer if you'd like to:

  • Highlight advanced device capabilities, such as printing multiple photos per page.
  • Make device-specific recommendations. For example, you could use your device app to present image management options or provide methods for setting and saving printer-specific defaults.

Dos and don'ts

  • After you call window.print(), check for and handle error messages from within the onClick event handler for your app's Print button. This allows your app to abort a print request if, for example, no printer is available.
  • Notify the user if printing fails and, if possible, explain the reason for the failure.
  • If you plan to customize the print experience, separate this code into a print companion app. This allows you to componentize your code and eases the test and debugging process.
  • Don't try to customize your print experience to use the V3 print driver.
  • Don't advertise accessories for the print device in your customized print UI.
  • Don't show items for sale that aren't related to the reason the Windows Store device app was invoked. For example, it's relevant to show print cartridges for purchase after a user clicks a notification alerting them that ink is low. However, it's not appropriate to also try to sell print cords or photo printing kits in this same scenario.
  • Don't redirect the user to your company’s website for more product sales.
  • Don't present information that isn't relevant to the task of setting printing preferences. For example, don't provide info about how to clean the print heads or how to align and test the print nozzles.

Security considerations

The following articles provide guidance for writing secure C++ code.

Related topics

Meet Windows Store device apps
Windows Store device apps for printers
Guidelines for print-capable apps
Windows Store app printing sample



© 2015 Microsoft