Photo Editor C++/WinRT sample application
Note
The sample is targeted and tested for Windows 10, version 1903 (10.0; Build 18362), and Visual Studio 2019. If you prefer, you can use project properties to retarget the project(s) to Windows 10, version 1809 (10.0; Build 17763), and/or open the sample with Visual Studio 2017.
To clone or download the sample application, see Photo Editor C++/WinRT sample application on the code samples gallery.
The Photo Editor application is a Universal Windows Platform (UWP) sample application that showcases development with the C++/WinRT language projection. The sample application allows you to retrieve photos from the Pictures library, and then edit the selected image with assorted photo effects. In the sample's source code, you'll see a number of common practices—such as data binding, and asynchronous actions and operations—performed using the C++/WinRT projection. Here are some of the specific features demonstrated by the sample.
- Use of Standard C++17 syntax and libraries with Windows Runtime (WinRT) APIs.
- Use of coroutines, including the use of co_await, co_return, IAsyncAction, and IAsyncOperation<TResult>.
- Creation and use of custom Windows Runtime class (runtime class) projected types and implementation types. For more info about these terms, see Consume APIs with C++/WinRT and Author APIs with C++/WinRT.
- Event handling, including the use of auto-revoking event tokens.
- Use of the external Win2D NuGet package, and Windows::UI::Composition, for image effects.
- XAML data binding, including the {x:Bind} markup extension.
- XAML styling and UI customization, including connected animations.
Also see Where can I find C++/WinRT sample apps?.