此页面有用吗?
您对此内容的反馈非常重要。 请告诉我们您的想法。
更多反馈?
1500 个剩余字符
导出 (0) 打印
全部展开
信息
您所需的主题如下所示。但此主题未包含在此库中。

Type.GetEvent 方法 (String)

2013/12/13

返回表示指定的公共事件的 EventInfo 对象。

Namespace:  System
程序集:  mscorlib(位于 mscorlib.dll 中)

声明
Public Function GetEvent ( _
	name As String _
) As EventInfo

参数

name
类型: System.String
String,包含由当前的 Type 声明或继承的事件的名称。

返回值

类型: System.Reflection.EventInfo
如找到,则为表示由当前 Type 声明或继承的指定公共事件的 EventInfo 对象;否则为 Nothing

异常条件
ArgumentNullException

nameNothing

如果某事件至少有一个公共的方法或访问器,则该事件被视为对于反射是公共的。否则,该事件被视为私有,而且您必须使用 BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static(在 Visual Basic 中,使用 Or 将多个值合并在一起)来获取它。

name 的搜索区分大小写。搜索范围包括公共静态和公共实例事件。

下表显示当反映到某个类型时,Get 方法返回基类的哪些成员。

成员类型

静态

非静态

构造函数

字段

是。字段总是按名称和签名隐藏。

事件

不适用

常规类型系统规则是:该继承与实现属性的方法的继承相同。反射将属性视为按名称和签名隐藏。请参见下面的“注意 2”。

方法

是。方法(虚方法和非虚方法)可按名称隐藏或按名称和签名隐藏。

嵌套类型

属性

不适用

常规类型系统规则是:该继承与实现属性的方法的继承相同。反射将属性视为按名称和签名隐藏。请参见下面的“注意 2”。

说明:

  1. 按名称和签名隐藏会考虑签名的所有部分,包括自定义修饰符、返回类型、参数类型、标记和非托管调用约定。这是二进制比较。

  2. 对于反射,属性和事件按名称和签名隐藏。如果基类中有同时带 get 访问器和 set 访问器的属性,但派生类中仅有 get 访问器,则派生类属性隐藏基类属性,并且您将无法访问基类的设置程序。

  3. 自定义特性不是常规类型系统的组成部分。

如果当前 Type 表示某种已构造的泛型类型,则此方法将返回 EventInfo,并且其类型参数由相应的类型参数替换。

如果当前 Type 表示泛型类型或泛型方法的定义中的类型参数,则此方法搜索类约束的事件。

下面的示例获取指定事件的 EventInfo 对象。

说明注意:

要运行此示例,请参见生成具有静态 Windows Phone TextBlock 控件的示例


Imports System.Reflection

Class Example

    Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)

        Dim myType As Type = outputBlock.GetType()

        Dim myEvent As EventInfo = myType.GetEvent("MouseLeftButtonUp")

        If Not (myEvent Is Nothing) Then
            outputBlock.Text &= "Looking for the MouseLeftButtonUp event in the " & _
                myType.FullName & " class." & vbCrLf
            outputBlock.Text &= myEvent.ToString() & vbCrLf
        Else
            outputBlock.Text &= "The MouseLeftButtonUp event is not found in the " & _
                myType.FullName & " class." & vbCrLf
        End If

   End Sub 
End Class 

' This example produces the following output:
'
'Looking for the MouseLeftButtonUp event in the System.Windows.Controls.TextBlock class.
'System.Windows.Input.MouseButtonEventHandler MouseLeftButtonUp


Windows Phone OS

受以下版本支持: 8.0, 7.1, 7.0

Windows Phone

显示:
© 2015 Microsoft