DynamicRenderer.OnDraw Methode

Definitie

Hiermee tekent u de inkt in realtime, zodat deze lijkt te stromen vanaf de tabletpen of een ander aanwijsapparaat.

protected:
 virtual void OnDraw(System::Windows::Media::DrawingContext ^ drawingContext, System::Windows::Input::StylusPointCollection ^ stylusPoints, System::Windows::Media::Geometry ^ geometry, System::Windows::Media::Brush ^ fillBrush);
protected virtual void OnDraw(System.Windows.Media.DrawingContext drawingContext, System.Windows.Input.StylusPointCollection stylusPoints, System.Windows.Media.Geometry geometry, System.Windows.Media.Brush fillBrush);
abstract member OnDraw : System.Windows.Media.DrawingContext * System.Windows.Input.StylusPointCollection * System.Windows.Media.Geometry * System.Windows.Media.Brush -> unit
override this.OnDraw : System.Windows.Media.DrawingContext * System.Windows.Input.StylusPointCollection * System.Windows.Media.Geometry * System.Windows.Media.Brush -> unit
Protected Overridable Sub OnDraw (drawingContext As DrawingContext, stylusPoints As StylusPointCollection, geometry As Geometry, fillBrush As Brush)

Parameters

drawingContext
DrawingContext

Het DrawingContext object waarop de lijn wordt weergegeven.

stylusPoints
StylusPointCollection

Het StylusPointCollection segment van de lijn dat moet worden getekend.

geometry
Geometry

Een Geometry die het pad van de muis aanwijst.

fillBrush
Brush

Een kwast waarmee het uiterlijk van de huidige pennenstreek wordt aangegeven.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de OnDraw methode kunt overschrijven om digitale inkt dynamisch weer te geven met een LinearGradientBrush.

protected override void OnDraw(DrawingContext drawingContext,
                               StylusPointCollection stylusPoints,
                               Geometry geometry, Brush fillBrush)
{
    // Create a new Brush, if necessary
    if (brush == null)
    {
        Color primaryColor;

        if (fillBrush is SolidColorBrush)
        {
            primaryColor = ((SolidColorBrush)fillBrush).Color;
        }
        else
        {
            primaryColor = Colors.Red;
        }

        brush = new LinearGradientBrush(Colors.Blue, primaryColor, 20d);
    }

    drawingContext.DrawGeometry(brush, null, geometry);
}
Protected Overrides Sub OnDraw(ByVal drawingContext As DrawingContext, _
                               ByVal stylusPoints As StylusPointCollection, _
                               ByVal geometry As Geometry, _
                               ByVal fillBrush As Brush)

    ' Create a new Brush, if necessary
    If brush Is Nothing Then

        Dim primaryColor As Color

        If TypeOf fillBrush Is SolidColorBrush Then
            primaryColor = CType(fillBrush, SolidColorBrush).Color
        Else
            primaryColor = Colors.Red
        End If

        brush = New LinearGradientBrush(Colors.Blue, primaryColor, 20.0)

    End If

    drawingContext.DrawGeometry(brush, Nothing, geometry)

End Sub

Notities voor overnemers

Wanneer u OnDraw(DrawingContext, StylusPointCollection, Geometry, Brush) overschrijft in een afgeleide klasse, moet u de methode van de basisklasse OnDraw(DrawingContext, StylusPointCollection, Geometry, Brush) aanroepen.

Van toepassing op