CompositionColorBrush Class
Definition
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.
Paints a SpriteVisual with a solid color.
public ref class CompositionColorBrush sealed : CompositionBrush
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 131072)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class CompositionColorBrush final : CompositionBrush
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 131072)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class CompositionColorBrush : CompositionBrush
Public NotInheritable Class CompositionColorBrush
Inherits CompositionBrush
- Inheritance
- Attributes
Windows requirements
Device family |
Windows 10 (introduced in 10.0.10586.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v2.0)
|
Examples
SpriteVisual visual= compositor.CreateSpriteVisual();
visual.Brush = compositor.CreateColorBrush (Colors.White);
using Windows.UI.Composition;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Hosting;
using System.Numerics;
…
public sealed partial class MainPage : Page
{
Compositor _compositor;
ContainerVisual _root;
SpriteVisual _visual;
public MainPage()
{
this.InitializeComponent();
this.Loaded += MainPage_Loaded;
}
private void MainPage_Loaded(object sender, RoutedEventArgs e)
{
// Get compositor and create a solid color visual
_root = ElementCompositionPreview.GetContainerVisual(MainGrid) as ContainerVisual;
_compositor = _root.Compositor;
// Create a solid color visual
_visual = _compositor.CreateSpriteVisual();
_visual.Brush = _compositor.CreateColorBrush( Windows.UI.Colors.Blue );
_visual.Size = new Vector2(250, 250);
// Set hard border mode to disable anti-aliasing
_visual.BorderMode = CompositionBorderMode.Hard;
// Set backface-visibility to hidden in event of 3D rotation
_visual.BackfaceVisibility = CompositionBackfaceVisibility.Hidden;
// Set composite mode to DestinationInvert to do color subtraction blending
_visual.CompositeMode = CompositionCompositeMode.DestinationInvert;
_root.Children.InsertAtTop(_visual);
// Create a child visual of the solid color visual
SpriteVisual childVisual = _compositor.CreateSpriteVisual();
childvisual.Brush = _compositor.CreateColorBrush( Windows.UI.Colors.Orange );
childVisual.Size = new Vector2(250, 20);
_visual.Children.InsertAtTop(childVisual);
}
private void Button_Click(object sender, RoutedEventArgs e)
{
// Show or hide visual and subtree
if (_visual.IsVisible)
{
_visual.IsVisible = false;
}
else
{
_visual.IsVisible = true;
}
}
}
Animating the Color property using a key frame animation.
void ColorAnimation(SpriteVisual targetVisual)
{
//
// Create a key frame animation for the targetBrush.Color property
//
var animation = _compositor.CreateColorKeyFrameAnimation();
animation.InsertKeyFrame(0.0f, Color.FromArgb(255, 0, 255, 0));
animation.InsertKeyFrame(1.0f, Colors.Purple);
targetVisual.Brush.StartAnimation("Color", animation);
}
Animating the Color property using an ExpressionAnimation.
void ColorExpression(SpriteVisual targetVisual, float screenWidth )
{
var expression = _compositor.CreateExpressionAnimation("ColorLerp(ColorFrom, ColorTo, target.Offset.X / Width");
expression.SetReferenceParameter("target", targetVisual);
expression.SetColorParameter("ColorFrom", Colors.Green);
expression.SetColorParameter("ColorTo", Colors.Purple);
expression.SetFloatParameter("Width", screenWidth);
targetVisual.Brush.StartAnimation("Color", expression);
}
Properties
Color |
The color used to fill a SpriteVisual. Animatable. |
Comment |
A string to associate with the CompositionObject. (Inherited from CompositionObject) |
Compositor |
The Compositor used to create this CompositionObject. (Inherited from CompositionObject) |
Dispatcher |
The dispatcher for the CompositionObject. (Inherited from CompositionObject) |
DispatcherQueue |
Gets the DispatcherQueue for the CompostionObject. (Inherited from CompositionObject) |
ImplicitAnimations |
The collection of implicit animations attached to this object. (Inherited from CompositionObject) |
Properties |
The collection of properties associated with the CompositionObject. (Inherited from CompositionObject) |
Methods
Close() |
Closes the CompositionObject and releases system resources. (Inherited from CompositionObject) |
ConnectAnimation(String, CompositionAnimation) |
Connects and animation. (Inherited from CompositionObject) |
DisconnectAnimation(String) |
Disconnects an animation. (Inherited from CompositionObject) |
Dispose() |
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. (Inherited from CompositionObject) |
PopulatePropertyInfo(String, AnimationPropertyInfo) |
Defines a property that can be animated. (Inherited from CompositionObject) |
StartAnimation(String, CompositionAnimation, AnimationController) |
Connects an animation with the specified property of the object and starts the animation. (Inherited from CompositionObject) |
StartAnimation(String, CompositionAnimation) |
Connects an animation with the specified property of the object and starts the animation. (Inherited from CompositionObject) |
StartAnimationGroup(ICompositionAnimationBase) |
Starts an animation group. The StartAnimationGroup method on CompositionObject lets you start CompositionAnimationGroup. All the animations in the group will be started at the same time on the object. (Inherited from CompositionObject) |
StopAnimation(String) |
Disconnects an animation from the specified property and stops the animation. (Inherited from CompositionObject) |
StopAnimationGroup(ICompositionAnimationBase) |
Stops an animation group. (Inherited from CompositionObject) |
TryGetAnimationController(String) |
Returns an AnimationController for the animation running on the specified property. (Inherited from CompositionObject) |