Shape.OnClick 方法

更新:2007 年 11 月

引发 Click 事件。

命名空间:  Microsoft.VisualBasic.PowerPacks
程序集:  Microsoft.VisualBasic.PowerPacks.Vs(在 Microsoft.VisualBasic.PowerPacks.Vs.dll 中)

语法

声明
Protected Friend Overridable Sub OnClick ( _
    e As EventArgs _
)
用法
Dim e As EventArgs

Me.OnClick(e)
protected internal virtual void OnClick(
    EventArgs e
)
protected public:
virtual void OnClick(
    EventArgs^ e
)
protected internal function OnClick(
    e : EventArgs
)

参数

备注

引发事件时会通过委托调用事件处理程序。有关更多信息,请参见 引发事件

OnClick 方法还允许派生类对事件进行处理而不必附加委托。这是在派生类中处理事件的首选技术。

对继承者的说明:

在派生类中重写 OnClick 时,一定要调用基类的 OnClick 方法,以使注册的委托能够接收事件。

示例

下面的示例是在发生 Click 事件时所执行的一个方法。 Shape 类有多个具有名称模式 On EventName 的方法,当发生 EventName 事件时,该类会执行相应的方法。 (EventName 表示相应事件的名称。)

下面的示例演示如何在 LineShape 的派生类中重写 OnClick 和 OnLostFocus 方法。

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
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);
    }
}

权限

另请参见

参考

Shape 类

Shape 成员

Microsoft.VisualBasic.PowerPacks 命名空间

其他资源

如何:使用 LineShape 控件绘制直线 (Visual Studio)

如何:使用 OvalShape 和 RectangleShape 控件绘制形状 (Visual Studio)

Line 和 Shape 控件简介 (Visual Studio)