tmi*_*hty 4 vb.net customization class
"Rectangle"类没有公开我需要操作矩形的所有函数.例如,我经常只想更改".Bottom"值.现有的功能都不允许我这样做,我发现自己创建了一个新的矩形来完成我需要的工作.
这给我带来了一个普遍的问题:是否有可能在框架中为类添加其他函数,然后在我的整个项目中可用?
你可以
Rectangle通过扩展方法扩展类(如)Rectangle实例的自定义类(具有一个矩形)并添加其他属性和方法请注意,您不能继承Rectangle它以扩展它的功能,因为它不是一个Class而是一个Structure.
这是一个简单的扩展:
Module RectangleExtensions
<System.Runtime.CompilerServices.Extension()> _
Public Sub Move(rectangle As Rectangle, x As Int32, y As Int32)
rectangle.Location = New Point(x, y)
End Sub
End Module
Run Code Online (Sandbox Code Playgroud)
您可以使用它,就好像它是一个现有的方法 Rectangle
Dim rec = New Rectangle(New Point(100, 100), New Size(50, 50))
rec.move(100, 200)
Run Code Online (Sandbox Code Playgroud)