Freigeben über


DrawingContext.PushOpacity Methode

Definition

Legt die angegebene Durchlässigkeitseinstellung im Zeichnungskontext ab.

Überlädt

PushOpacity(Double)

Legt die angegebene Durchlässigkeitseinstellung im Zeichnungskontext ab.

PushOpacity(Double, AnimationClock)

Legt die angegebene Durchlässigkeitseinstellung im Zeichnungskontext ab und wendet die angegebene Animationsuhr an.

PushOpacity(Double)

Legt die angegebene Durchlässigkeitseinstellung im Zeichnungskontext ab.

public:
 abstract void PushOpacity(double opacity);
public abstract void PushOpacity (double opacity);
abstract member PushOpacity : double -> unit
Public MustOverride Sub PushOpacity (opacity As Double)

Parameter

opacity
Double

Der Durchlässigkeitsfaktor, der auf nachfolgende Zeichnungsbefehle angewendet werden soll. Dieser Faktor wird durch vorherige PushOpacity(Double)-Operationen erhöht.

Beispiele

Im folgenden Beispiel werden die PushOpacityBefehle , PushEffectund Pop veranschaulicht.

using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Navigation;
using System.Windows.Media.Effects;

namespace SDKSample
{

    public class PushEffectExample : Page
    {

        public PushEffectExample()
        {
            Pen shapeOutlinePen = new Pen(Brushes.Black, 2);
            shapeOutlinePen.Freeze();

            // Create a DrawingGroup
            DrawingGroup dGroup = new DrawingGroup();

            // Obtain a DrawingContext from 
            // the DrawingGroup.
            using (DrawingContext dc = dGroup.Open())
            {
                // Draw a rectangle at full opacity.
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, new Rect(0, 0, 25, 25));

                // Push an opacity change of 0.5. 
                // The opacity of each subsequent drawing will
                // will be multiplied by 0.5.
                dc.PushOpacity(0.5);

                // This rectangle is drawn at 50% opacity.
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, new Rect(25, 25, 25, 25));

                // Blurs subsquent drawings. 
                dc.PushEffect(new BlurBitmapEffect(), null);

                // This rectangle is blurred and drawn at 50% opacity (0.5 x 0.5). 
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, new Rect(50, 50, 25, 25));

                // This rectangle is also blurred and drawn at 50% opacity.
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, new Rect(75, 75, 25, 25));

                // Stop applying the blur to subsquent drawings.
                dc.Pop();

                // This rectangle is drawn at 50% opacity with no blur effect.
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, new Rect(100, 100, 25, 25));
            }

            // Display the drawing using an image control.
            Image theImage = new Image();
            DrawingImage dImageSource = new DrawingImage(dGroup);
            theImage.Source = dImageSource;

            this.Content = theImage;
        }
    }
}
Imports System.Windows.Media.Animation
Imports System.Windows.Media.Effects

Namespace SDKSample


    Public Class PushEffectExample
        Inherits Page

        Public Sub New()
            Dim shapeOutlinePen As New Pen(Brushes.Black, 2)
            shapeOutlinePen.Freeze()

            ' Create a DrawingGroup
            Dim dGroup As New DrawingGroup()

            ' Obtain a DrawingContext from 
            ' the DrawingGroup.
            Using dc As DrawingContext = dGroup.Open()
                ' Draw a rectangle at full opacity.
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, New Rect(0, 0, 25, 25))

                ' Push an opacity change of 0.5. 
                ' The opacity of each subsequent drawing will
                ' will be multiplied by 0.5.
                dc.PushOpacity(0.5)

                ' This rectangle is drawn at 50% opacity.
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, New Rect(25, 25, 25, 25))

                ' Blurs subsquent drawings. 
                dc.PushEffect(New BlurBitmapEffect(), Nothing)

                ' This rectangle is blurred and drawn at 50% opacity (0.5 x 0.5). 
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, New Rect(50, 50, 25, 25))

                ' This rectangle is also blurred and drawn at 50% opacity.
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, New Rect(75, 75, 25, 25))

                ' Stop applying the blur to subsquent drawings.
                dc.Pop()

                ' This rectangle is drawn at 50% opacity with no blur effect.
                dc.DrawRectangle(Brushes.Blue, shapeOutlinePen, New Rect(100, 100, 25, 25))
            End Using

            ' Display the drawing using an image control.
            Dim theImage As New Image()
            Dim dImageSource As New DrawingImage(dGroup)
            theImage.Source = dImageSource

            Me.Content = theImage

        End Sub




    End Class

End Namespace

Hinweise

Die Deckkraft wird in alle nachfolgenden Zeichnungsbefehle eingefügt, bis sie vom Pop Befehl entfernt wird.

Gilt für:

PushOpacity(Double, AnimationClock)

Legt die angegebene Durchlässigkeitseinstellung im Zeichnungskontext ab und wendet die angegebene Animationsuhr an.

public:
 abstract void PushOpacity(double opacity, System::Windows::Media::Animation::AnimationClock ^ opacityAnimations);
public abstract void PushOpacity (double opacity, System.Windows.Media.Animation.AnimationClock opacityAnimations);
abstract member PushOpacity : double * System.Windows.Media.Animation.AnimationClock -> unit
Public MustOverride Sub PushOpacity (opacity As Double, opacityAnimations As AnimationClock)

Parameter

opacity
Double

Der Durchlässigkeitsfaktor, der auf nachfolgende Zeichnungsbefehle angewendet werden soll. Dieser Faktor wird durch vorherige PushOpacity(Double)-Operationen erhöht.

opacityAnimations
AnimationClock

Die Uhr, mit der der Durchlässigkeitswert animiert werden soll, oder null für keine Animation. Diese Uhr muss aus einer AnimationTimeline erstellt werden, mit der Double-Werte animiert werden können.

Hinweise

Die Deckkraft wird in alle nachfolgenden Zeichnungsbefehle eingefügt, bis sie vom Pop Befehl entfernt wird.

Gilt für: