如何使用 C# 代码访问在 Access 上运行的 OfficeLine 上的程序?

问题描述 投票:0回答:1

基本上我使用的是在 Access 上运行的 OfficeLine,我的程序如下所示:

List of Officline programms

现在我想从 C# 打开其中一个。

我尝试为此使用 Interop.Access,因为我的 C# 程序是一个类库程序。

然后从 Access 获取所有表单,因为在我的任务管理器中,我的 Officline 看起来像这样:

Task Manager look

我得到了带有该代码的表格:

foreach (Form form in accessApp.Forms)
                {
                    try
                    {
                        // Überprüfen, ob Formular geöffnet ist
                        if (!accessApp.Forms[form.Name].CurrentView.Equals(AcFormView.acDesign))
                        {
                            //MessageBox.Show("Das ist der if Block:  " + form.Name);

                            if (form.Name == "frmSysControlCenter")
                            {
                                foreach (Microsoft.Office.Interop.Access.Control control in form.Controls)
                                {
                                    
                                }
                            }
                        }
                        else
                        {
                            MessageBox.Show("Das ist der else Block:  " + form.Name);
                        }
                    }
                    catch
                    {
                        // Falls ein Fehler auftritt, das Formular ist nicht geöffnet
                    }
                }

frmSysControlCenter 应该是表格,但现在我不知道如何从我的 OfficeLine 访问公式,我想过类似浏览控件的方法,但没有用。

所以有人知道如何从我的第一个屏幕截图中打开像 Stammdaten -> Artikel 这样的公式吗?

c# ms-access interop control-center
1个回答
0
投票

我自己找到了一个方法,就是用这个:

        dynamic app = Marshal.GetActiveObject("Access.Application");
© www.soinside.com 2019 - 2024. All rights reserved.