微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

vb.net利用反射实现字符串调用窗体功能

VB.NET取得项目中的所有窗体名称

   Dim a As Assembly = Assembly.GetExecutingAssembly '取得目前组件
    ' VB.NET 反射机制取得当前函数名 类名
    '类名(当前窗体名称)
    Dim GetClass As String = System.Reflection.MethodBase.GetCurrentMethod.ReflectedType.Name
    '函数名
    Dim GetFucntion As String = System.Reflection.MethodBase.GetCurrentMethod.Name
    '命名空间
    Dim GetSystem As String = System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Namespace
    '从命名空间开始逐项列出
    For Each t As Type In a.GetTypes            '找寻组件内所有类别型态
      If t.IsSubclassOf(GetType(Form)) Then '如果类别是继承自Form的话
        LB.Items.Add(t.ToString & vbNewLine) '列出该类别信息
        ‘TextBox1.AppendText(t.ToString & vbNewLine)
      End If
    Next
vb.net下利用反射实现字符串调用方法
    Dim AllPath As String = My.Application.Info.DirectoryPath & "\RHTEST.exe"


    Dim frmName As String = ListBox1.Text.Trim '窗体的类别信息(项目名.窗体名)
    Dim AssemblyObj As System.Reflection.Assembly
    AssemblyObj = System.Reflection.Assembly.LoadFile(AllPath)
    Dim frm As Form = AssemblyObj.CreateInstance(frmName)
    frm.MdiParent = Me.ParentForm
    frm.Dock = DockStyle.Fill
    frm.ShowDialog()

原文地址:https://www.jb51.cc/vb/257575.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐