LayerVisual Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ein ContainerVisual, dessen untergeordnete Elemente auf eine einzelne Ebene vereinfacht werden.
public ref class LayerVisual sealed : ContainerVisual
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.LiftedContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class LayerVisual final : ContainerVisual
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65536)]
class LayerVisual final : ContainerVisual
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.LiftedContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class LayerVisual : ContainerVisual
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65536)]
public sealed class LayerVisual : ContainerVisual
Public NotInheritable Class LayerVisual
Inherits ContainerVisual
- Vererbung
- Attribute
Beispiele
Anwenden von Effekten auf ein LayerVisual
private async void InitComposition()
{
Compositor compositor = ElementCompositionPreview.GetElementVisual(MyGrid).Compositor;
//Create LayerVisual
LayerVisual layerVisual = compositor.CreateLayerVisual();
layerVisual.Size = new Vector2(900,900);
//Create SpriteVisuals to use as LayerVisual child
SpriteVisual sv1 = compositor.CreateSpriteVisual();
sv1.Brush = compositor.CreateColorBrush(Windows.UI.Colors.Blue);
sv1.Size = new Vector2(300, 300);
sv1.Offset = new Vector3(200, 200, 0);
SpriteVisual sv2 = compositor.CreateSpriteVisual();
sv2.Brush = compositor.CreateColorBrush(Colors.Red);
sv2.Size = new Vector2(300, 300);
sv2.Offset = new Vector3(400, 400, 0);
//Add children to the LayerVisual
layerVisual.Children.InsertAtTop(sv1);
layerVisual.Children.InsertAtTop(sv2);
//Create Effect
var graphicsEffect = new GaussianBlurEffect
{
Name = "Blur",
Source = new CompositionEffectSourceParameter("Backdrop"),
BlurAmount = 10.0f,
BorderMode = EffectBorderMode.Hard,
Optimization = EffectOptimization.Balanced
};
var blurEffectFactory = compositor.CreateEffectFactory(graphicsEffect,
new[] { "Blur.BlurAmount" });
var blurBrush = blurEffectFactory.CreateBrush();
//Apply Effect
layerVisual.Effect = blurBrush;
ElementCompositionPreview.SetElementChildVisual(MyGrid, layerVisual);
}
Hinzufügen eines DropShadow
private async void InitComposition()
{
Compositor compositor = ElementCompositionPreview.GetElementVisual(MyGrid).Compositor;
//Create LayerVisual
LayerVisual layerVisual = compositor.CreateLayerVisual();
layerVisual.Size = new Vector2(900, 900);
//Create SpriteVisuals to use as LayerVisual child
SpriteVisual sv1 = compositor.CreateSpriteVisual();
sv1.Brush = compositor.CreateColorBrush(Windows.UI.Colors.Blue);
sv1.Size = new Vector2(300, 300);
sv1.Offset = new Vector3(200, 200, 0);
SpriteVisual sv2 = compositor.CreateSpriteVisual();
sv2.Brush = compositor.CreateColorBrush(Colors.Red);
sv2.Size = new Vector2(300, 300);
sv2.Offset = new Vector3(400, 400, 0);
//Add children to the LayerVisual
layerVisual.Children.InsertAtTop(sv1);
layerVisual.Children.InsertAtTop(sv2);
//Create DropShadow
DropShadow shadow = compositor.CreateDropShadow();
shadow.Color = Colors.DarkSlateGray;
shadow.Offset = new Vector3(40, 40, 0);
shadow.BlurRadius = 9;
shadow.SourcePolicy = CompositionDropShadowSourcePolicy.InheritFromVisualContent;
//Associate Shadow with LayerVisual
layerVisual.Shadow = shadow;
ElementCompositionPreview.SetElementChildVisual(MyGrid, layerVisual);
}
Hinweise
Ein LayerVisual ist ein spezieller Eingabetyp, der verwendet werden kann, um eine Struktur von Visuals auszuwählen. Die Struktureingabe wird implizit mithilfe von LayerVisual angegeben. Wenn ein EffectBrush auf die Effect-Eigenschaft von LayerVisual festgelegt ist, verwendet EffectBrush automatisch die Teilstruktur, die am LayerVisual verwurzelt ist, als Eingabe. Die implizite Eingabe für LayerVisual funktioniert für Effekte wie folgt:
- Wenn der Effekt über eine Eingabe verfügt, verwendet EffectBrush die Teilstruktur, die am LayerVisual-Element verwurzelt ist, als Eingabe.
- Wenn der Effekt über 2 Eingaben verfügt, verwendet die erste ungebundene Eingabe von EffectBrush die Teilstruktur, die am LayerVisual verwurzelt ist, als Eingabe.
- Das System lässt nicht zu, dass ein Effekt mit 0 Eingaben oder Effekten mit allen Eingaben, die an SurfaceBrush gebunden sind, als EffectBrush-Eigenschaft von LayerVisual festgelegt wird. Dadurch wird eine Ausnahme ausgelöst.
Eigenschaften
AnchorPoint |
Der Punkt des Visuals, das am Offset des Visuals positioniert werden soll. Der Wert wird in Bezug auf die Größe des Visuals normalisiert. Animatable. (Geerbt von Visual) |
BackfaceVisibility |
Gibt an, ob die Rückseite des Visuals während einer 3D-Transformation sichtbar sein soll. (Geerbt von Visual) |
BorderMode |
Gibt an, wie die Ränder von Bitmaps und Clips, die einem Visual zugeordnet sind, oder mit allen Visuals in der Unterstruktur, die in diesem Visual verwurzelt sind, erstellt werden. Das Festlegen von BorderMode auf ein übergeordnetes Visual wirkt sich auf alle untergeordneten Visuals in der Unterstruktur aus und kann bei jedem untergeordneten Visual selektiv deaktiviert werden. (Geerbt von Visual) |
CenterPoint |
Der Punkt, über den eine Drehung oder Skalierung erfolgt. Animatable (Geerbt von Visual) |
Children |
Die untergeordneten Elemente von ContainerVisual. (Geerbt von ContainerVisual) |
Clip |
Gibt den Beschneidungsbereich für das Visual an. Wenn ein Visual gerendert wird, wird nur der Teil des Visuals angezeigt, der innerhalb des Beschneidungsbereichs liegt, während alle Inhalte, die sich außerhalb des Beschneidungsbereichs erstrecken, abgeschnitten werden (d. a. nicht angezeigt). (Geerbt von Visual) |
Comment |
Eine Zeichenfolge, die dem CompositionObject zugeordnet werden soll. (Geerbt von CompositionObject) |
CompositeMode |
Gibt an, wie die Bitmap eines Visuals mit dem Bildschirm gemischt wird. (Geerbt von Visual) |
Compositor |
Der Compositor , der zum Erstellen dieses CompositionObject verwendet wird. (Geerbt von CompositionObject) |
DispatcherQueue |
Ruft die DispatcherQueue für das CompositionObject ab. (Geerbt von CompositionObject) |
Effect |
Der Effekt, der auf die vereinfachte Darstellung der untergeordneten Elemente eines LayerVisual-Elements angewendet werden soll. |
ImplicitAnimations |
Die Auflistung impliziter Animationen, die an dieses Objekt angefügt sind. (Geerbt von CompositionObject) |
IsHitTestVisible |
Ruft einen Wert ab, der angibt, ob die visuelle Unterstruktur, die in diesem Visual verwurzelt ist, an Treffertests teilnimmt, oder legt diesen fest. (Geerbt von Visual) |
IsPixelSnappingEnabled |
Ruft einen Wert ab, der angibt, ob die Kompositions-Engine das gerenderte Visual an einer Pixelgrenze ausrichtet, oder legt diesen fest. (Geerbt von Visual) |
IsVisible |
Gibt an, ob das Visual und seine gesamte Teilstruktur untergeordneter Visuals sichtbar sind. (Geerbt von Visual) |
Offset |
Der Offset des Visuals relativ zum übergeordneten Element oder für ein Stammvisual der Offset relativ zur oberen linken Ecke der Fenster, die das Visual hosten. Animatable. (Geerbt von Visual) |
Opacity |
Die Deckkraft des Visuals. Animatable. Die Deckkrafteigenschaft bestimmt die Transparenz des Visuals, sofern vorhanden, und ist ein Wert von 0 bis 1. 0 ist vollständig transparent und 1 vollständig undurchsichtig. Ein Visual mit der Deckkrafteigenschaft 0 ist weiterhin in der Struktur vorhanden. Wie andere Eigenschaften im Visual kann Opacity mithilfe der Windows-Benutzeroberfläche animiert werden. Kompositionsanimationssystem. (Geerbt von Visual) |
Orientation |
Eine Quaternion, die eine Ausrichtung und Drehung im 3D-Raum beschreibt, die auf das Visual angewendet werden. Animatable. (Geerbt von Visual) |
Parent |
Das übergeordnete Element des visuellen Objekts. (Geerbt von Visual) |
ParentForTransform |
Visual, das das Koordinatensystem angibt, in dem dieses Visual zusammengesetzt ist. (Geerbt von Visual) |
Properties |
Die Auflistung der Eigenschaften, die dem CompositionObject zugeordnet sind. (Geerbt von CompositionObject) |
RelativeOffsetAdjustment |
Gibt den Offset des Visuals in Bezug auf die Größe des übergeordneten Visuals an. (Geerbt von Visual) |
RelativeSizeAdjustment |
Ruft die Größe des Visuals in Bezug auf die Größe des übergeordneten Visuals ab oder legt diese fest. (Geerbt von Visual) |
RotationAngle |
Der Drehwinkel im Bogenmaß des Visuellen. Animatable. (Geerbt von Visual) |
RotationAngleInDegrees |
Der Drehwinkel des Visuellen in Grad. Animatable. (Geerbt von Visual) |
RotationAxis |
Die Achse, um die das Visual gedreht werden soll. Animatable. (Geerbt von Visual) |
Scale |
Die Skalierung, die auf das Visual angewendet werden soll. (Geerbt von Visual) |
Shadow |
Der Schatten, der auf die vereinfachte Darstellung der untergeordneten Elemente eines LayerVisual-Elements angewendet werden soll. |
Size |
Die Breite und Höhe des Visuals. Animatable. (Geerbt von Visual) |
TransformMatrix |
Die Transformationsmatrix, die auf das Visual angewendet werden soll. Animatable. (Geerbt von Visual) |
Methoden
Close() |
Schließt das CompositionObject und gibt Systemressourcen frei. (Geerbt von CompositionObject) |
Dispose() |
Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen. (Geerbt von CompositionObject) |
PopulatePropertyInfo(String, AnimationPropertyInfo) |
Definiert eine Eigenschaft, die animiert werden kann. (Geerbt von CompositionObject) |
StartAnimation(String, CompositionAnimation, AnimationController) |
Verbindet eine Animation mit der angegebenen Eigenschaft des Objekts und startet die Animation. (Geerbt von CompositionObject) |
StartAnimation(String, CompositionAnimation) |
Verbindet eine Animation mit der angegebenen Eigenschaft des Objekts und startet die Animation. (Geerbt von CompositionObject) |
StartAnimationGroup(ICompositionAnimationBase) |
Startet eine Animationsgruppe. Mit der StartAnimationGroup-Methode für CompositionObject können Sie CompositionAnimationGroup starten. Alle Animationen in der Gruppe werden gleichzeitig für das Objekt gestartet. (Geerbt von CompositionObject) |
StopAnimation(String) |
Trennt eine Animation von der angegebenen Eigenschaft und beendet die Animation. (Geerbt von CompositionObject) |
StopAnimationGroup(ICompositionAnimationBase) |
Beendet eine Animationsgruppe. (Geerbt von CompositionObject) |
TryGetAnimationController(String) |
Gibt einen AnimationController für die Animation zurück, die für die angegebene Eigenschaft ausgeführt wird. (Geerbt von CompositionObject) |