如何:创建分部方法 (Visual Basic)
更新:2007 年 11 月
分部方法为开发人员提供了将自定义逻辑插入到设计器生成的代码中的方法,通常用于数据验证。创建分部方法分为两部分:定义方法签名和编写实现。通常,定义由代码生成器的设计器编写,而实现则由使用生成代码的开发人员编写。有关更多信息,请参见分部方法。
定义方法签名
在分部类中,签名以关键字 Partial 开头。
将 Private 用作访问修饰符。
添加关键字 Sub。方法必须是 Sub 过程。
编写方法的名称。
提供方法的参数列表。
使用 End Sub 结束方法。
实现方法
将 Private 用作访问修饰符。
添加要包含的其他任何修饰符。
编写方法的名称,该名称必须与签名定义中的名称相匹配。
添加参数列表。参数名称必须与签名中的名称相匹配。参数数据类型可以省略。
定义方法的主体。
用 End Sub 语句结束。
示例
分部方法的定义和实现通常在单独的文件中,这些文件使用分部类创建。分部方法通常用于提供有关项目中的某些内容已更改的通知。
在下面的示例中,开发并调用一个名为 OnNameChanged 的分部方法。在文件 Customer.Designer.vb 中的 Customer 分部类中定义方法签名。实现在文件 Customer.vb 中的 Customer 分部类中,并且在使用该类的项目中创建 Customer 的一个实例。
结果是一个包含下面消息的消息框:
Name was changed to: Blue Yonder Airlines.
' File Customer.Designer.vb provides a partial class definition for
' Customer, which includes the signature for partial method
' OnNameChanged.
Partial Class Customer
Private _Name As String
Property Name() As String
Get
Return _Name
End Get
Set(ByVal value As String)
_Name = value
OnNameChanged()
End Set
End Property
' Definition of the partial method signature.
Partial Private Sub OnNameChanged()
End Sub
End Class
' In a separate file, a developer who wants to use the partial class
' and partial method fills in an implementation for OnNameChanged.
Partial Class Customer
' Implementation of the partial method.
Private Sub OnNameChanged()
MsgBox("Name was changed to " & Me.Name)
End Sub
End Class
Module Module1
Sub Main()
' Creation of cust will invoke the partial method.
Dim cust As New Customer With {.Name = "Blue Yonder Airlines"}
End Sub
End Module