Visual Basic .net - 从变量名称调用过程

San*_*hin 2 .net vb.net

有没有办法用变量名称调用Visual Basic(.net)中的过程?

例如,变量strColour可以是10个预定义值之一,绿色蓝色黑色白色红色粉红色橙色黄色靛蓝色.如何处理每一个都在它自己的Sub Routine,colgreen,colblue,colblack等.

我可以使用一堆if..then..else和select case,但我想拥有的东西就像VBA Excel的Run"col"和strColour

可能吗?

dba*_*ett 6

Private Sub Button1_Click(ByVal sender As System.Object, _
                          ByVal e As System.EventArgs) Handles Button1.Click
    Dim s As String = "one"
    CallByName(Me, s, CallType.Method) 'Subs must be public

    s = "two"
    CallByName(Me, s, CallType.Method) 'Subs must be public
End Sub

Public Sub one()
    Stop
End Sub

Public Sub two()
    Stop
End Sub
Run Code Online (Sandbox Code Playgroud)