我正在vb.net中开发一个工具,需要从MS Access DB表单中找出Activex控件。我能够在表单中输入多个控件,但无法仅从表单中获取Activex控件。任何人都知道如何实现这一点,请建议。
答案 0 :(得分:1)
您可以访问controltype属性吗?如果是这样,我无法帮助vb.net,但这里有一些可能有帮助的VBA。
ActiveXCount = 0
For Each ctl In Screen.ActiveForm
If ctl.ControlType = 119 Then 'Custom control'
'Debug.Print ctl.Class'
ActiveXCount = ActiveXCount + 1
End If
Next
答案 1 :(得分:0)
我不确定你的想法是什么。
试试这个:进入MS访问并创建新属性,该属性是表单上控件的数量。在VBA中,me.Countrols.Count。使用Access自动化打开表单。 OnFOrmLoad()将控件的数量与表单的名称一起写入文本文件,然后关闭表单。
然后在VB.net中打开文本文件。它是间接的但它会起作用。
How To Automate Microsoft Access From Visual Basic .NET
自动化:
Dim oAccess As Access.Application
' Start a new instance of Access for Automation:
oAccess = New Access.ApplicationClass()
' Open a database in exclusive mode:
oAccess.OpenCurrentDatabase(filepath:="c:\mydb.mdb", Exclusive:=True)
oAccess.DoCmd.OpenForm(FormName:="Employees")