VB.NET 创建子字典

VB.NET Create a dictionary of Sub

我目前正在尝试创建一个如下所示的词典:

Dim dict As New Dictionary(Of Integer, Action)
dict.Add(1, MySubFunction1)
dict.Add(2, MySubFunction2)


 Public Sub MySubFunction1()
    'do something, return nothing'
End Sub

Public Sub MySubFunction2()
    'do something, return nothing'
End Sub

问题是,我无法像在 C# 中看到的那样将 Action 与子函数一起使用。 我是否应该将“Sub”替换为“Function”并且总是return这样的东西:

Public Function MySubFunction1()
    'do something'
    Return True
End Function

Public Function MySubFunction2()
    'do something'
    Return True
End Function

或者有什么更好的方法吗?

ActionSub 是正确的组合。
但与 c# 不同的是,您不能仅使用方法名称作为委托,您需要使用 AddressOf:

Dim dict As New Dictionary(Of Integer, Action)
dict.Add(1, AddressOf MySubFunction1)
dict.Add(2, AddressOf MySubFunction2)
dict(1).Invoke

Public Sub MySubFunction1()
    Console.WriteLine("Test")
End Sub

Public Sub MySubFunction2()
    
End Sub