Как узнать элементы управления Activex из форм MS Access DB с помощью vb.net

Я разрабатываю инструмент на vb.net и мне нужно найти элементы управления Activex из форм MS Access DB. Я могу ограничить количество элементов управления в форме, но не могу получить элементы управления Activex только из формы. Может ли кто-нибудь понять, как этого добиться, пожалуйста, предложите.


person Suman    schedule 11.12.2008    source источник


Ответы (2)


Можете ли вы получить доступ к свойству 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
person Fionnuala    schedule 11.12.2008
comment
Привет, Рему, большое спасибо. Я попробую .. Спасибо. - person Suman; 11.12.2008

Я не уверен, что то, чего вы хотите, возможно.
Попробуйте следующее: войдите в доступ к MS и создайте новое свойство, которое представляет собой количество элементов управления в форме. В VBA это me.Countrols.Count. Откройте форму с помощью автоматизации доступа. OnFOrmLoad () записывает количество элементов управления в текстовый файл вместе с именем формы, а затем закрывает форму. После этого откройте текстовый файл в VB.net. Это косвенно, но это сработает.

Как автоматизировать доступ к Microsoft из 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")
person Gary Kindel    schedule 11.12.2008