Excel Interop-显示全屏错误?

时间:2018-11-05 20:45:32

标签: excel vb.net interop

我正在将Excel Introp用于.net应用程序,以将Excel工作簿嵌入Windows用户窗体中。

        excApp.Visible = False
        wb = excApp.Workbooks.Open(directOpenPath) ' , [ReadOnly]:=False, IgnoreReadOnlyRecommended:=True)
        wb.Saved = True  ' necessary to prevent Excel has stopped working error and to not actually do a save 

        hwnd1 = CType(excApp.Hwnd, IntPtr)
        SetParent(excApp.Hwnd, pnlExcel.Handle)
        SendMessage(excApp.Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0)
        MoveWindow(hwnd1, 0, 0, pnlExcel.Width, pnlExcel.Height, True)
        excApp.Visible = True

当我使用上面的代码打开时,工作表上有ActiveX按钮可以正常工作。

但是,我希望使对象看起来不像Excel,因此我想隐藏功能区,公式栏等。

我添加了以下行:excApp.DisplayFullScreen = True。完成此操作后,单击按钮将不再启动关联的宏。此外,我无法再单击工作表中的任何单元格。这似乎是奇怪的行为,但我已将其追溯到DisplayFullScreen行。

我还试图包括以下内容:

excApp.ActiveWindow.DisplayWorkbookTabs = False
excApp.ActiveWindow.DisplayHeadings = False
excApp.ActiveWindow.DisplayGridlines = False

但是我得到一个未设置为引用错误的对象。如果添加excApp.ActiveWindow.Activate,工作表将再次“锁定”,并且无法单击任何单元格。 有任何想法吗?

0 个答案:

没有答案