Windows.UI.Composition Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides APIs for user interface composition.
Classes
AmbientLight |
A light that illuminates every targeted Visual equally . |
AnimationController |
Provides playback controls for a KeyFrameAnimation. |
AnimationEndedEventArgs |
Provides event data for the CompositionPropertyAnimator.AnimationEnded event. |
AnimationPropertyInfo |
Represents information about a property that can be animated. |
BackEasingFunction |
Represents an easing function that changes a value in the opposite direction of the main function during part of a duration, then reverses and finishes the function-over-time behavior in a conventional way. |
BooleanKeyFrameAnimation |
A time-based animation that targets a Boolean property with one or more key frames. |
BounceEasingFunction |
Represents an easing function that creates an animated bouncing effect. |
BounceScalarNaturalMotionAnimation |
A bounce physics-based animation that targets any Scalar-based property. |
BounceVector2NaturalMotionAnimation |
A bounce physics-based animation that targets any Vector2-based property. |
BounceVector3NaturalMotionAnimation |
A bounce physics-based animation that targets any Vector3-based property. |
CircleEasingFunction |
Represents an easing function that creates an animation that accelerates and/or decelerates using a circular function. |
ColorKeyFrameAnimation |
A time-based animation that targets the Color property with one or more color key frames. The ColorKeyFrameAnimation class is one of the supported types of KeyFrameAnimations that is used to animate the Color property off of the Brush property on a SpriteVisual. When working with ColorKeyFrameAnimation s, utilize Windows.UI.Color objects for the values of keyframes. Utilize the InterpolationColorSpace property to define which color space the system will interpolate through for the animation. |
CompositionAnimation |
Represents the base animation class. |
CompositionAnimationGroup |
Defines a group of animations. CompositionAnimationGroup provides a way to group CompositionAnimations in a list which will be started at the same time when StartAnimationGroup is called on CompositionObject. All CompositionAnimation in CompositionAnimationGroup need to assign a value to the Target property in the animation itself. CompositionAnimationGroup can also be associated with ImplicitAnimationCollection as an animation that gets executed as a result of a trigger. |
CompositionBackdropBrush |
A brush that applies an effect (or a chain of effects) to the region behind a SpriteVisual. |
CompositionBatchCompletedEventArgs |
Arguments for the CompositionCommitBatch.Completed or CompositionScopedBatch.Completed events. |
CompositionBrush |
Base class for brushes used to paint a SpriteVisual. |
CompositionCapabilities |
Provides the ability to check system hardware capabilities so that Visual Layer Effects may be scaled accordingly. This allows you to ensure that your application's use of rendering-intensive operations is tailored to match the device's capabilities, providing optimum performance and pleasant visual results. |
CompositionClip |
Base class for clipping objects such as InsetClip. |
CompositionColorBrush |
Paints a SpriteVisual with a solid color. |
CompositionColorGradientStop |
Describes the location and color of a transition point in a gradient. |
CompositionColorGradientStopCollection |
Represents a collection of CompositionColorGradientStop objects that can be individually accessed by index. |
CompositionCommitBatch |
A group of active animations or effects. |
CompositionContainerShape |
Represents a container for CompositionShapes, used to group items that share 2D transforms. |
CompositionDrawingSurface |
A drawing surface for interoperation with Direct2D or Direct3D. |
CompositionEasingFunction |
Base class for interpolator functions to use with KeyFrameAnimations. The CompositionEasingFunction class is the base class for easing functions that are used with KeyFrameAnimation s. Easing functions are used to describe how the system interpolates between two different keyframes. For a list of supported easing functions, see the types in the Derived section. |
CompositionEffect |
Represents an effect. |
CompositionEffectBrush |
Paints a SpriteVisual with the output of a filter effect. The filter effect description is defined using the CompositionEffectFactory class. |
CompositionEffectFactory |
Creates a composition object that contains a Win2D effect description format in the Microsoft.Graphics.Canvas.Effects namespace. Note Effects that are not supported are marked as [NoComposition] in the Win2D API Reference for effects namespace. |
CompositionEffectFactoryLoadResult |
Represents information about the results of a call to the status of a call to CompositionEffectFactory.CompleteLoadAsync. |
CompositionEffectSourceParameter |
Used to declare an arbitrary name (a String) to be associated with a CompositionBrush (the “effect source”). The association of the given name and the effect source occurs when the SetSourceParameter method of a CompositionEffectBrush is called. |
CompositionEllipseGeometry |
Represents an ellipse with the specified center and radius. |
CompositionGeometricClip |
Represents a shape that clips a portion of a visual. The visible portion of the visual is a shape defined by a CompositionGeometry. The portion of the visual outside the geometry is clipped. |
CompositionGeometry |
Represents the base class for composition geometries. |
CompositionGradientBrush |
Represents a brush that describes a gradient, composed of gradient stops. CompositionGradientBrush is supported only with Rgb and RgbLinear CompositionColorSpace. |
CompositionGraphicsDevice |
Used to create all hardware bound resources for a given DirectX device on a compositor session. CompositionGraphicsDevice contains a DirectX device that is used to perform the GPU operations. Developers can obtain a Graphics device from the compositor top level object. |
CompositionImage |
Represents an image. |
CompositionImageLoadResult |
Represents the result of loading a CompositionImage. |
CompositionImageOptions |
Represents options for a CompositionImage. |
CompositionLight |
Base class for a light source that can target a UI scene. The CompositionLight.Targets property determines which Visuals are lit. |
CompositionLinearGradientBrush |
Represents a brush that paints an area with a linear gradient. |
CompositionLineGeometry |
Represents a straight line between two points. |
CompositionMaskBrush |
Paints a SpriteVisual with a CompositionBrush with an opacity mask applied to it. The source of the opacity mask can be any CompositionBrush of type CompositionColorBrush, CompositionLinearGradientBrush, CompositionSurfaceBrush, CompositionEffectBrush or a CompositionNineGridBrush. The opacity mask must be specified as a CompositionSurfaceBrush. |
CompositionMipmapSurface |
Represents a drawing surface for mipmap textures. |
CompositionNineGridBrush |
Paints a SpriteVisual with a CompositionBrush after applying Nine-Grid Stretching to the contents of the Source brush. The source of the nine-grid stretch can by any CompositionBrush of type CompositionColorBrush, CompositionSurfaceBrush or a CompositionEffectBrush. |
CompositionObject |
Base class of the composition API representing a node in the visual tree structure. Composition objects are the visual tree structure on which all other features of the composition API use and build on. The API allows developers to define and create one or many Visual objects each representing a single node in a Visual tree. |
CompositionPath |
Represents a series of connected lines and curves. |
CompositionPathGeometry |
Represents a series of connected lines and curves. |
CompositionProjectedShadow |
Represents a scene-based shadow calculated using the relationship between the light, the visual that casts the shadow,and the visual that receives the shadow, such that the shadow is drawn differently on each receiver. |
CompositionProjectedShadowCaster |
Represents an object that casts a projected shadow. |
CompositionProjectedShadowCasterCollection |
Represents a collection of CompositionProjectedShadowCaster objects. |
CompositionProjectedShadowReceiver |
Represents an object that can have a projected shadow cast on it. |
CompositionProjectedShadowReceiverUnorderedCollection |
Represents an unordered collection of CompositionProjectedShadowReceiver objects. |
CompositionPropertyAnimator |
Animates composition properties. |
CompositionPropertySet |
Stores values as key-value pairs. |
CompositionRadialGradientBrush |
Represents a brush that paints an area with a radial gradient. |
CompositionRectangleGeometry |
Warning This API contains a known issue in Windows 10, versions 2004 and below. Don't use this API in your code. Represents a rectangle shape of the specified size. To obtain a CompositionRectangleGeometry instance, call Compositor.CreateRectangleGeometry. |
CompositionRoundedRectangleGeometry |
Represents a rectangle shape of the specified size with rounded corners. |
CompositionScopedBatch |
An explicitly created group of active animations or effects. |
CompositionShadow |
Base class for shadows that can be applied to a SpriteVisual. |
CompositionShape |
Represents the base shape class. |
CompositionShapeCollection |
Represents a collection of CompositionShape objects that can be individually accessed by index. |
CompositionSpriteShape |
A CompositionShape that draws Stroked and Filled CompositionGeometry. |
CompositionStrokeDashArray |
Represents a collection of values that indicates the pattern of dashes and gaps that is used to outline shapes. |
CompositionSurfaceBrush |
Paints a SpriteVisual with pixels from an ICompositionSurface. |
CompositionTarget |
Represents the window on which to display the composition tree. |
CompositionTexture |
Represents a raw Direct3D texture that can be bound to a composition visual as content. The object can be used anywhere that a generic composition surface can be used in those APIs today—for example, as the content of a sprite visual or a surface brush. The object exposes an available fence, which can be used to synchronize application rendering and composition work. Can also accept various attributes, such as an alpha mode, source rect, and color space, to more precisely define the content being displayed. The composition textures API supports Direct3D 11 only. |
CompositionTransform |
Provides generalized transformation support for composition objects. |
CompositionViewBox |
Represents a container that maps shape visual tree coordinates onto the visual. |
CompositionVirtualDrawingSurface |
Represents sparsely allocated bitmaps that can be associated with visuals for composition in a visual tree. |
CompositionVisualSurface |
Represents a visual tree as an ICompositionSurface that can be used to paint a Visual using a CompositionBrush. |
Compositor |
Manages the session between an application and the system compositor process. The Compositor class creates an instance of the Compositor for the application that can be used as a factory for a variety of types in the Windows.UI.Composition namespace spanning the visual layer, effects system and animation system. The Compositor class also manages the lifetime of objects created from the factory. |
ContainerVisual |
A node in the visual tree that can have children. |
CubicBezierEasingFunction |
Represents a cubic-bezier function for interpolating between animation key frames. |
DelegatedInkTrailVisual |
Represents a "wet" ink stroke rendered by the system while the application processes the "dry" ink rendering pass. |
DistantLight |
An infinitely large distant light source that emits light in a single direction. For example, a distant light could be used to represent sunlight. |
DropShadow |
A drop shadow cast by a SpriteVisual or LayerVisual. |
EffectVisual |
Represents a visual tree node that is the root of a CompositionEffect. |
ElasticEasingFunction |
Represents an easing function that creates an animation that resembles a spring oscillating back and forth until it comes to rest. |
ExponentialEasingFunction |
Represents an easing function that creates an animation that accelerates and/or decelerates using an exponential formula. |
ExpressionAnimation |
A Composition Animation that uses a mathematical equation to calculate the value for an animating property every frame. |
ImageVisual |
Represents a visual tree node that is the root of a CompositionImage. |
ImplicitAnimationCollection |
A collection of animations triggered when a condition is met. |
InitialValueExpressionCollection |
A collection of values that specify where an animation will start. |
InsetClip |
Represents a rectangle that clips a portion of a visual. The portion of the visual inside the rectangle is visible; the portion of the visual outside the rectangle is clipped. |
KeyFrameAnimation |
A time-based animation with one or more key frames. These frames are markers, allowing developers to specify values at specific times for the animating property. KeyFrame animations can be further customized by specifying how the animation interpolates between keyframes. |
LayerVisual |
A ContainerVisual whose children are flattened into a single layer. |
LinearEasingFunction |
Represents a linear function for interpolating between animation key frames. |
NaturalMotionAnimation |
Represents a physics-based animation that uses forces to dynamically move content. |
PathKeyFrameAnimation |
Warning This API contains a known issue in Windows 10, versions 20H2 and below. Do not use this API in your code. Represents a time-based animation with one or more key frames where each key frame value is represented by a CompositionPath. The easing specifies the interopolation between paths. |
PointLight |
A point source of light that emanates light in all directions. |
PowerEasingFunction |
Represents an easing function that creates an animation that accelerates and/or decelerates using the formula f (t) = t*p* where p is equal to the Power property. |
QuaternionKeyFrameAnimation |
A time-based animation that targets the Orientation property with one or more key frames. The QuaternionKeyFrameAnimation class is one of the supported types of KeyFrameAnimations that is used to animate the Orientation property on a Visual. Quaternions are a useful and sometimes simpler way to think about rotations – Quaternions take the shortest path between angles and avoid issues like Gimbal Lock that rotation angle/axis and rotation matrices run into. A Quaternion is made up of two components: a scalar and vector part. |
RectangleClip |
Represents a rectangle with optional rounded corners that clips a portion of a visual. The portion of the visual inside the rectangle is visible; the portion of the visual outside the rectangle is clipped. |
RedirectVisual |
Represents a visual that gets its content from another visual. |
RenderingDeviceReplacedEventArgs |
Arguments for the RenderingDeviceReplaced event. |
ScalarKeyFrameAnimation |
A time-based animation that targets any Scalar-based property with one or more key frames. |
ScalarNaturalMotionAnimation |
The base Scalar NaturalMotionAnimation used to target a Scalar property. |
ShapeVisual |
Represents a visual tree node that is the root of a CompositionShape. |
SineEasingFunction |
Represents an easing function that creates an animation that accelerates and/or decelerates using a sine formula. |
SolidColorVisual |
Represents a solid color. |
SpotLight |
A light source that casts inner and outer cones of light. For example, a flashlight. |
SpringScalarNaturalMotionAnimation |
A spring physics-based animation that targets any Scalar-based property. |
SpringVector2NaturalMotionAnimation |
A spring physics-based animation that targets any Vector2-based property. |
SpringVector3NaturalMotionAnimation |
A spring physics-based animation that targets any Vector3-based property. |
SpriteVisual |
Hosts 2D boxed content of type CompositionBrush. Any part of the visual not covered by pixels from the brush are rendered as transparent pixels. CompositionBrush can be either a CompositionBackdropBrush, CompositionColorBrush, a CompositionSurfaceBrush or a CompositionEffectBrush. |
StepEasingFunction |
A step function for interpolating between animation key frames that advances animations in increments like steps which can be can be defined. Behaviors for initial and final steps can be customized. |
Vector2KeyFrameAnimation |
A time-based animation that targets any Vector2-based property with one or more key frames. |
Vector2NaturalMotionAnimation |
The base Vector2 NaturalMotionAnimation used to target a Vector2 property. |
Vector3KeyFrameAnimation |
A time-based animation that targets any Vector3-based property with one or more keyframes. |
Vector3NaturalMotionAnimation |
The base Vector3 NaturalMotionAnimation used to target a Vector3 property. |
Vector4KeyFrameAnimation |
A time-based animation that targets any Vector4-based property with one or more keyframes. |
Visual |
The base visual object in the visual hierarchy. |
VisualCollection |
Represents a collection of visual instances. |
VisualUnorderedCollection |
An unordered collection of visuals. |
Structs
InkTrailPoint |
Represents a single point for a DelegatedInkTrailVisual. |
Interfaces
IAnimationObject |
Represents an object that has properties that can be referenced by an animation. |
ICompositionAnimationBase |
Base class for composition animations. |
ICompositionSupportsSystemBackdrop |
Provides a property for working with a CompositionBrush as a system backdrop. A SpriteVisual with the given CompositionBrush will be placed at the back of the implementing object's subtree. |
ICompositionSurface |
Represents the content of a surface that can be used to paint the bounds of a |
ICompositionSurfaceFacade |
Represents a placeholder for a composition surface that can be used like a real composition surface. |
IVisualElement |
Marks an object to indicate to the system that it can resolve to a composition Visual. |
IVisualElement2 |
Provides a method that retrieves an object's underlying Visual. |
Enums
AnimationControllerProgressBehavior |
Defines constants that specify how the AnimationController.Progress value is determined. |
AnimationDelayBehavior |
Specifies the animation delay behavior. |
AnimationDirection |
Specifies the play direction of an animation. |
AnimationEndReason |
Defines constants that specify why an animation ended. |
AnimationIterationBehavior |
Specifies if the animation should loop. |
AnimationPropertyAccessMode |
Defines constants that specify how an animated property can be accessed. |
AnimationStopBehavior |
Specifies the behavior of an animation when it stops. |
CompositionBackfaceVisibility |
Specifies whether the back face of a visual is visible during a 3D transform. |
CompositionBatchTypes |
Batch types for CompositionCommitBatch and CompositionScopedBatch. |
CompositionBitmapInterpolationMode |
Specifies the algorithm used for interpolating pixels from ICompositionSurface when they do not form a one-to-one mapping to pixels on screen. |
CompositionBorderMode |
Controls the aliasing behavior on the edges of visual borders. |
CompositionColorSpace |
Specifies the color space for interpolating color values in ColorKeyFrameAnimation. |
CompositionCompositeMode |
Determines how a non-opaque visual's content is blended with the background content behind the visual. |
CompositionDropShadowSourcePolicy |
Specifies the masking policy for a shadow. |
CompositionEasingFunctionMode |
Defines constants that specify how the animation associated with an easing function interpolates. |
CompositionEffectFactoryLoadStatus |
The status of the asynchronous compilation of a shader for an effect description. |
CompositionGetValueStatus |
Indicates the outcome of an attempt to retrieve the value of a key-value pair. |
CompositionGradientExtendMode |
Defines constants that specify how to draw the gradient outside the brush's gradient vector or space. |
CompositionImageLoadStatus |
Defines constants that specify the status of a call to CompositionImage.CompleteLoadAsync. |
CompositionImageProgressStage |
Defines constants that specify the progress of loading a CompositionImage. |
CompositionMappingMode |
Defines constants that specify whether the gradient brush's positioning coordinates (StartPoint, EndPoint) are absolute or relative to the output area. |
CompositionStretch |
Specifies how content is scaled when mapped from its source to a destination space. |
CompositionStrokeCap |
Defines constants that specify the shape at the end of a line or segment. |
CompositionStrokeLineJoin |
Defines constants that specify the shape used to join two lines or segments. |
Remarks
Windows.UI.Composition Overviews, Samples, and Known Issues
Item | Description |
---|---|
Windows.UI.Composition Overview | Overview and architecture of the API |
Windows.UI.Composition Samples | API samples in the official Github |
Known Issues and Latest Information | Latest updates on the API in the MSDN Forums |