gpt4 book ai didi

VB.NET:向类添加附加功能

转载 作者:行者123 更新时间:2023-12-04 23:58:18 24 4
gpt4 key购买 nike

“矩形”类没有公开我需要操作矩形的所有函数。
例如,我经常只想更改“.Bottom”值。
现有的功能都不允许我这样做,我发现自己创建了一个新的矩形来做我需要的。

这给我带来了一个普遍的问题:
是否可以向框架中的类添加其他功能,然后在我的整个项目中可用?

最佳答案

你可以

  • 通过 extension methods 扩展类(如 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

    您可以像使用 Rectangle 中的现有方法一样使用它
    Dim rec = New Rectangle(New Point(100, 100), New Size(50, 50))
    rec.move(100, 200)

    关于VB.NET:向类添加附加功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14013741/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com