Aracılığıyla paylaş


DynamicRenderer.OnDraw Yöntem

Tanım

Mürekkep, tablet kaleminden veya başka bir işaret cihazından "akıyor" gibi görünmesi için gerçek zamanlı olarak çizer.

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)

Parametreler

drawingContext
DrawingContext

Konturun DrawingContext üzerinde işlendiği nesne.

stylusPoints
StylusPointCollection

StylusPointCollection Çizecek vuruşun kesimini temsil eden.

geometry
Geometry

Geometry Fare işaretçisinin yolunu temsil eden bir.

fillBrush
Brush

Geçerli vuruşun görünümünü belirten bir Fırça.

Örnekler

Aşağıdaki örnekte dijital mürekkep ile LinearGradientBrushdinamik olarak işlemek için yönteminin nasıl geçersiz kılınacakları OnDraw gösterilmektedir.

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

Devralanlara Notlar

Türetilmiş bir sınıfta geçersiz kılma OnDraw(DrawingContext, StylusPointCollection, Geometry, Brush) sırasında temel sınıfın OnDraw(DrawingContext, StylusPointCollection, Geometry, Brush) yöntemini çağırdığınızdan emin olun.

Şunlara uygulanır