Skip to main content
PrintManager.ShowPrintUIAsync | showPrintUIAsync method

Programmatically initiates the user interface for printing content.


Windows.Graphics.Printing.PrintManager.showPrintUIAsync().done( /* Your success and error handlers */ );

public static IAsyncOperation<bool> ShowPrintUIAsync()

Public Shared Function ShowPrintUIAsync() As IAsyncOperation(Of Boolean)

static IAsyncOperation<bool>^ ShowPrintUIAsync()


This method has no parameters.

Return value

Type: IAsyncOperation<Boolean>

A Boolean value to indicate a TRUE for success or a FALSE for a failure.


This method may be used by an application which has already used GetForCurrentView to retrieve the PrintManager instance and has registered a listener for the PrintTaskRequested event to initiate the printing user experience. In general, applications are encouraged to let users print content via the Devices charm. For this reason, using the ShowPrintUIAsync method is discouraged. ShowPrintUIAsync is provided mainly for scenarios in which the app is to provide guidance for users to help users complete a printing-related process. For example, guidance at the end of a ticket purchasing process, or after checking in for a flight, and then printing a boarding pass.

ShowPrintUIAsync displays the appropriate printing window. If printing can't be performed at that time, the method will throw an exception. We recommend catching these exceptions and letting the user know when printing can't proceed, as shown here.

async private void printButton_Click(object sender, RoutedEventArgs e)
        // Show print UI
        await Windows.Graphics.Printing.PrintManager.ShowPrintUIAsync();

        // Printing cannot proceed at this time
        ContentDialog noPrintingDialog = new ContentDialog()
            Title = "Printing error",
            Content = "\nSorry, printing can't proceed at this time.", PrimaryButtonText = "OK"
        await noPrintingDialog.ShowAsync();

In this example, a print window is displayed in the event handler for a button click. If the method throws an exception (because printing can't be performed at that time), a ContentDialog control informs the user of the situation. For more info about printing from your app, see Printing.

Requirements (Windows 10 device family)

Device family

Universal, introduced version 10.0.10240.0 [for Xbox, see UWP features that aren't yet supported on Xbox]

API contract

Windows.Foundation.UniversalApiContract, introduced version 1.0


Windows::Graphics::Printing [C++]



Requirements (Windows 8.x and Windows Phone 8.x)

Minimum supported client

Windows 8

Minimum supported server

Windows Server 2012

Minimum supported phone

None supported


Windows::Graphics::Printing [C++]



See also