System.Reflection

在下面這一篇看到了一篇有興趣的文章,原文是不使用判斷的方式,如何依變數值呼叫不同的function?,跟反映有些關係,改天比較有時間再來好好研究一下這個部分,下面這邊是實做的程式碼,目前只有呼叫Sub的部分,呼叫Function與取回傳回值得部分還要再去看一下,有興趣的朋友可以參考看看
Imports System.Reflection

Public Class Form1
Dim arg() As Object

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.GetType().InvokeMember("ShowMsg", BindingFlags.Instance Or BindingFlags.InvokeMethod Or BindingFlags.NonPublic Or BindingFlags.Public, Nothing, Me, arg)
End Sub

Private Sub ShowMsg()
MessageBox.Show("Hello")
End Sub

Private Function myShowMsg() As String
MessageBox.Show("Hello")
Return ""
End Function
End Class

留言

這個網誌中的熱門文章

開啟cshtml檔案時,出現『並未將物件參考設定為物件執行個體』的錯誤訊息

無法設定中斷點 尚未載入符號檔

DataGridView欄位計算總合