Shape.OnContextMenuChanged Method
Raises the ContextMenuChanged event.
Namespace: Microsoft.VisualBasic.PowerPacks
Assembly: Microsoft.VisualBasic.PowerPacks.Vs (in Microsoft.VisualBasic.PowerPacks.Vs.dll)
Syntax
'Declaration
Protected Overridable Sub OnContextMenuChanged ( _
e As EventArgs _
)
protected virtual void OnContextMenuChanged(
EventArgs e
)
protected:
virtual void OnContextMenuChanged(
EventArgs^ e
)
abstract OnContextMenuChanged :
e:EventArgs -> unit
override OnContextMenuChanged :
e:EventArgs -> unit
protected function OnContextMenuChanged(
e : EventArgs
)
Parameters
e
Type: System.EventArgsAn EventArgs that contains the event data.
Remarks
Raising an event invokes the event handler through a delegate. For more information, see Raising an Event.
The OnContextMenuChanged 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 you override OnContextMenuChanged in a derived class, be sure to call the OnContextMenuChanged method of the base class so that registered delegates receive the event.
Examples
The following example is an event-raising method that is executed when the Enabled property value changes. The Shape class has several methods with the name pattern OnPropertyNameChanged that raise the corresponding PropertyNameChanged event when the PropertyName value changes. (PropertyName represents the name of the corresponding property.)
The following example changes the color of a line when the Enabled property of a class derived from LineShape is changed to false.
Public Class DisabledLine
Inherits LineShape
Protected Overrides Sub OnEnabledChanged(ByVal e As EventArgs)
' Change the color of the line when selected.
If Me.BorderColor = SystemColors.InactiveBorder Then
Me.BorderColor = Color.Black
Else
Me.BorderColor = SystemColors.InactiveBorder
End If
MyBase.OnEnabledChanged(e)
End Sub
End Class
public class DisabledLine :
LineShape
{
protected override void OnEnabledChanged(EventArgs e)
{
// Change the color of the line when selected.
if (this.BorderColor == SystemColors.InactiveBorder)
{
this.BorderColor = Color.Black;
}
else
{
this.BorderColor = SystemColors.InactiveBorder;
}
base.OnEnabledChanged(e);
}
}
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
Microsoft.VisualBasic.PowerPacks Namespace
Other Resources
How to: Draw Lines with the LineShape Control (Visual Studio)
How to: Draw Shapes with the OvalShape and RectangleShape Controls (Visual Studio)