Share via


SimpleShape.OnPaint Method (PaintEventArgs)

 

Raises the Paint event.

Namespace:   Microsoft.VisualBasic.PowerPacks
Assembly:  Microsoft.VisualBasic.PowerPacks.Vs (in Microsoft.VisualBasic.PowerPacks.Vs.dll)

Syntax

protected internal override void OnPaint(
    PaintEventArgs e
)
public protected:
virtual void OnPaint(
    PaintEventArgs^ e
) override
override OnPaint : 
        e:PaintEventArgs -> unit
Protected Friend Overrides Sub OnPaint (
    e As PaintEventArgs
)

Parameters

Remarks

Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.

The OnPaint method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.

Notes to Inheritors:

When overriding OnPaint in a derived class, be sure to call the OnPaint method of the base class so that registered delegates receive the event.

Examples

The following example is a method that is executed when the Click event occurs. The Shape class has several methods that have the name pattern OnEventName that execute methods when the EventName event occurs. (EventName represents the name of the corresponding event.)

The following example demonstrates how to override the OnClick and OnLostFocus methods in a class that derives from LineShape.

public class HighlightLine :
    LineShape
{
    protected override void OnClick(EventArgs e)
    {
        // Change the color of the line when clicked.
        this.BorderColor = Color.Red;
        base.OnClick(e);
    }
    protected override void OnLostFocus(System.EventArgs e)
    {
        // Change the color of the line when focus is changed.
        this.BorderColor = Color.Black;
        base.OnLostFocus(e);
    }
}
Public Class HighlightLine
    Inherits LineShape
    Protected Overrides Sub OnClick(ByVal e As EventArgs)
        ' Change the color of the line when clicked.
        Me.BorderColor = Color.Red
        MyBase.OnClick(e)
    End Sub
    Protected Overrides Sub OnLostFocus(ByVal e As System.EventArgs)
        ' Change the color of the line when focus is changed.
        Me.BorderColor = Color.Black
        MyBase.OnLostFocus(e)
    End Sub
End Class

See Also

SimpleShape Class
Microsoft.VisualBasic.PowerPacks Namespace
Introduction to the Line and Shape Controls (Visual Studio)
How to: Draw Lines with the LineShape Control (Visual Studio)
How to: Draw Shapes with the OvalShape and RectangleShape Controls (Visual Studio)

Return to top