Compartir vía


Stroke.DrawCore(DrawingContext, DrawingAttributes) Método

Definición

Representa el objeto Stroke en el objeto DrawingContext especificado utilizando el objeto DrawingAttributes especificado.

protected:
 virtual void DrawCore(System::Windows::Media::DrawingContext ^ drawingContext, System::Windows::Ink::DrawingAttributes ^ drawingAttributes);
protected virtual void DrawCore (System.Windows.Media.DrawingContext drawingContext, System.Windows.Ink.DrawingAttributes drawingAttributes);
abstract member DrawCore : System.Windows.Media.DrawingContext * System.Windows.Ink.DrawingAttributes -> unit
override this.DrawCore : System.Windows.Media.DrawingContext * System.Windows.Ink.DrawingAttributes -> unit
Protected Overridable Sub DrawCore (drawingContext As DrawingContext, drawingAttributes As DrawingAttributes)

Parámetros

drawingContext
DrawingContext

El objeto DrawingContext en el que se representará el trazo especificado.

drawingAttributes
DrawingAttributes

Objeto DrawingAttributes que define los atributos del trazo que se dibuja.

Ejemplos

En el ejemplo siguiente se muestra cómo dibujar un círculo en cada StylusPoint una de las .Stroke Si la FitToCurve propiedad se establece trueen , GetBezierStylusPoints se usa para obtener los puntos del lápiz óptico. De lo contrario, se usa la StylusPoints propiedad .

protected override void DrawCore(DrawingContext context, DrawingAttributes overrides)
{
    // Draw the stroke. Calling base.DrawCore accomplishes the same thing.
    Geometry geometry = GetGeometry(overrides);
    context.DrawGeometry(new SolidColorBrush(overrides.Color), null, geometry);

    StylusPointCollection points;

    // Get the stylus points used to draw the stroke.  The points used depends on
    // the value of FitToCurve.
    if (this.DrawingAttributes.FitToCurve)
    {
        points = this.GetBezierStylusPoints();
    }
    else
    {
        points = this.StylusPoints;
    }

    // Draw a circle at each stylus point.
    foreach (StylusPoint p in points)
    {
        context.DrawEllipse(null, new Pen(Brushes.Black, 1), (Point)p, 5, 5);
    }
}
Protected Overrides Sub DrawCore(ByVal context As DrawingContext, _
        ByVal overridedAttributes As DrawingAttributes)

    ' Draw the stroke. Calling base.DrawCore accomplishes the same thing.
    Dim geometry As Geometry = GetGeometry(overridedAttributes)
    context.DrawGeometry(New SolidColorBrush(overridedAttributes.Color), Nothing, geometry)

    Dim points As StylusPointCollection

    ' Get the stylus points used to draw the stroke.  The points used depends on
    ' the value of FitToCurve.
    If Me.DrawingAttributes.FitToCurve Then
        points = Me.GetBezierStylusPoints()
    Else
        points = Me.StylusPoints
    End If

    ' Draw a circle at each stylus point.
    Dim p As StylusPoint
    For Each p In points
        context.DrawEllipse(Nothing, New Pen(Brushes.Black, 1), CType(p, Point), 5, 5)
    Next p

End Sub

Comentarios

Invalide el DrawCore método para realizar un dibujo personalizado al heredar de la Stroke clase .

Se aplica a