سلام.
با استفاده از Extension Method شما می تونید برای هر کلاسی که می خواهید متود Sub, Function اضافه کنید و از اون متودها توی ماجول هاتون استفاده کنید.
ابتدا یک ماجول به پروژه تون اضافه می کنید نامش رو نام کلاسی میگذارید که می خواهید براش Extension بسازید و در ادامه کلمه Extensions رو تایپ می کنید:
Module StringExtensions
End Module
و قبل از هر چیز باید این فضای نام رو به ماجول اضافه کنید:
Imports System.Runtime.CompilerServices
حالا هر متودی که می خواهید به کلاس مدنظر اضافه کنید ایجاد می کنید با این ویژگی که باید پارامتر یا ورودی اول نوع دیتاش همون کلاسی باشه که می خواهید Extensions رو به اون اضافه کنید:
Imports System.Runtime.CompilerServices
Module StringExtensions
<Extension()>
Public Sub Print(ByVal aString As String)
Console.WriteLine(aString)
End Sub
End Module
به هر متود در این ماجول باید یک اتریبوت Extension اختصاص داده بشه.
بکارگیری Extension Method:
Module Module1
Sub Main()
Dim example As String = "Example string"
example.Print()
End Sub
End Module
مرجع: https://learn.microsoft.com/en-us/do...ension-methods