类文件:(Class1) Imports System Imports System.Reflection <AttributeUsage(AttributeTargets.All, AllowMultiple:=True, Inherited:=True)> _ Public Class Class1 Inherits System.Attribute Private FamilyName As String Private GivenName As String Public Sub New(ByVal FamilyName As String) Me.FamilyName = FamilyName End Sub Public Overrides Function ToString() As String Return String.Format("Author:{0}{1}", FamilyName, GivenName) End Function Public Property Family() As String Get Return FamilyName End Get Set(ByVal Value As String) FamilyName = Value End Set End Property Public Property Given() As String Get Return GivenName End Get Set(ByVal Value As String) GivenName = Value End Set End Property End Class
使用自定义属性的文件(Form3.vb)
<Class1("Watkins", Given:="Damien"), Class1("Abrams")> _ Public Class Form3 Inherits System.Windows.Forms.Form
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim t As Type = Type.GetType("WindowsApplication6.Form3") Dim attributes As Object() = t.GetCustomAttributes(True) Console.WriteLine("Custom Attributes are: ") For Each o As Object In attributes Console.WriteLine(o) Next End Sub End Class

|