有没有一种可能的方法通过它在 Vb.Net 中的名称来引用一个对象?
情况是,我在我的设计器中创建了菜单项,其名称为 MenuA、MenuB 和 MenuC。
在数据库上,我创建了一个表格,其中包含所有可用菜单的列表,格式为:MenuA、MenuB 一直到 MenuZ。
我还创建了一个包含用户权限的动态表,即某个用户可以访问哪些菜单。
因此,当我启动应用程序时,它将获取分配给登录用户的菜单名称,并开始将 Visible 属性设置为 TRUE。
如果它是一个控件,我将通过Parent.Controls.Find(FoundMenu, True)
. 我的问题是大部分不是控件,是控件中添加的Item,甚至是Item中添加的另一个SubItem。
那么,如何仅通过名称在 UI 中找到对象呢?
SearchQuery = "SELECT menu_name FROM tbl_menulist menu, tbl_user user WHERE menu.id_menu = user.id_menu"
QueryReader = ExecuteQueryReader(SearchQuery)
QueryReader.Read()
//What I'm looking for is something like Controls.Find method to look for an object by name
//Seems silly, but what I'm looking for is to create something like below
//QueryReader(0).ToString = Menu Name
Dim FoundMenu As Object = FindMenuByName(QueryReader(0).ToString)
FoundMenu.Visible = True
任何人都可以帮助我,我非常感谢任何建议。
谢谢 :)