CompositionColorBrush クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SpriteVisual を純色で塗りつぶします。
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
- 継承
- 属性
Windows の要件
デバイス ファミリ |
Windows 10 (10.0.10586.0 で導入)
|
API contract |
Windows.Foundation.UniversalApiContract (v2.0 で導入)
|
例
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;
}
}
}
キー フレーム アニメーションを使用して Color プロパティをアニメーション化する。
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);
}
ExpressionAnimation を使用して Color プロパティをアニメーション化する。
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);
}
プロパティ
Color |
SpriteVisual の塗りつぶしに使用する色。 アニメーション化可能。 |
Comment |
CompositionObject に関連付ける文字列。 (継承元 CompositionObject) |
Compositor |
この CompositionObject の作成に使用されるコンポジター。 (継承元 CompositionObject) |
Dispatcher |
CompositionObject のディスパッチャー。 (継承元 CompositionObject) |
DispatcherQueue |
CompostionObject の DispatcherQueue を取得します。 (継承元 CompositionObject) |
ImplicitAnimations |
このオブジェクトにアタッチされた暗黙的なアニメーションのコレクション。 (継承元 CompositionObject) |
Properties |
CompositionObject に関連付けられているプロパティのコレクション。 (継承元 CompositionObject) |