UIElement.OnRender Method (DrawingContext)


When overridden in a derived class, participates in rendering operations that are directed by the layout system. The rendering instructions for this element are not used directly when this method is invoked, and are instead preserved for later asynchronous use by layout and drawing.

Namespace:   System.Windows
Assembly:  PresentationCore (in PresentationCore.dll)

protected virtual void OnRender(
	DrawingContext drawingContext


Type: System.Windows.Media.DrawingContext

The drawing instructions for a specific element. This context is provided to the layout system.

This method has no default implementation in the UIElement class.

Notes to Inheritors:

The OnRender method can be overridden to add further graphical elements (not previously defined in a logical tree) to a rendered element, such as effects or adorners. A DrawingContext object is passed as an argument, which provides methods for drawing shapes, text, images or videos.

The following code example shows a possible implementation for a panel derived class.

// Override the OnRender call to add a Background and Border to the OffSetPanel
protected override void OnRender(DrawingContext dc)
    SolidColorBrush mySolidColorBrush  = new SolidColorBrush();
    mySolidColorBrush.Color = Colors.LimeGreen;
    Pen myPen = new Pen(Brushes.Blue, 10);
    Rect myRect = new Rect(0, 0, 500, 500);
    dc.DrawRectangle(mySolidColorBrush, myPen, myRect);

.NET Framework
Available since 3.0
Return to top